Guía de Uso de LangPy
Aprende a usar LangPy para escribir código Python en tu idioma nativo usando palabras clave en lenguaje natural
Verificar Instalación
Verifica que LangPy esté correctamente instalado ejecutando el comando sin argumentos.
langpy
Si LangPy está instalado correctamente, verás el mensaje informativo
Uso Básico
Ejecuta archivos LangPy directamente
Crea un archivo con la extensión apropiada (.pyes para español, .pypt para portugués, .pyfr para francés) y ejecútalo con el comando langpy.
# hola.pyes
definir main():
nombre = "Mundo"
imprimir(f"Hola {nombre}!")
main()langpy hola.pyes
Lenguajes Soportados
El lenguaje se determina únicamente por la extensión del archivo
- Español: extensión .pyes - palabras clave como definir, si, para, imprimir
- Portugués: extensión .pypt - palavras-chave como definir, se, para, imprimir
- Francés: extensión .pyfr - mots-clés comme definir, si, pour, imprimer
Ejecutar Proyectos
LangPy soporta estructuras de proyectos con punto de entrada __main__
Organiza tu código en directorios y usa __main__.pyes como punto de entrada principal.
mi_proyecto/
├── __main__.pyes # Punto de entrada
├── math.pyes # Módulo local
└── utils/
├── __init__.pyes
└── helpers.pyeslangpy mi_proyecto/
LangPy ejecutará automáticamente el archivo __main__.pyes del directorio
Transpilar a Python
Convierte archivos LangPy a archivos Python estándar
Genera archivos .py que pueden ejecutarse con el intérprete estándar de Python.
langpy transpile script.pyes
Esto crea un archivo .py con el mismo nombre junto a tu archivo fuente
LangPy resuelve y transpila automáticamente todos los módulos locales importados que tengan la extensión del lenguaje correspondiente, preservando la estructura de directorios.
# Si main.pyes importa utils/math.pyes: # main.pyes → main.py # utils/math.pyes → utils/math.py
Transpilar a Directorio Específico
Genera archivos Python en un directorio de salida personalizado
Usa el flag --output para especificar un directorio de salida. LangPy copiará todos los archivos necesarios preservando la estructura.
langpy transpile main.pyes --output dist/ langpy transpile main.pyes -o dist/
Transpila archivos LangPy importados y copia archivos .py referenciados (excluyendo módulos de pip)
Referencia de Comandos CLI
langpy <archivo>
Ejecuta directamente un archivo LangPy o proyecto con __main__.pyes
langpy script.pyes langpy mi_proyecto/
langpy transpile
Convierte archivos LangPy a Python estándar. Resuelve automáticamente imports locales de LangPy.
langpy transpile script.pyes
--output / -o
Especifica directorio de salida para transpilación. Preserva estructura de directorios y copia archivos .py vanilla referenciados.
langpy transpile script.pyes --output dist/ langpy transpile script.pyes -o dist/
--force / -f
Fuerza la sobrescritura de archivos .py existentes durante la transpilación.
langpy transpile script.pyes --force langpy transpile script.pyes -f
--help
Muestra información de ayuda y comandos disponibles.
langpy --help
--version
Muestra la versión instalada de LangPy.
langpy --version
Trabajar con Librerías
LangPy es 100% compatible con las librerías de Python
Puedes importar y usar cualquier librería de Python o crear módulos locales usando la sintaxis de LangPy.
# math.pyes
definir suma(a, b):
retornar a + b
definir resta(a, b):
retornar a - b# main.pyes
desde operations importar suma, resta
importar numpy como np
definir analizar_datos():
# Usa tus funciones
resultado = suma(10, 5)
imprimir(f"Suma: {resultado}")
# Usa cualquier librería de Python
datos = np.array([1, 2, 3, 4, 5])
imprimir(f"Media: {np.mean(datos)}")
analizar_datos()langpy main.pyes
Cómo Funciona
LangPy es un transpilador léxico que traduce únicamente las palabras clave a Python, dejando todo lo demás sin cambios.
- Lee tu archivo .pyes/.pypt/.pyfr
- Tokeniza usando el tokenizador de la biblioteca estándar de Python
- Reemplaza únicamente los tokens NAME con palabras clave (strings y comentarios permanecen sin cambios)
- Destokeniza de vuelta a código Python válido
- Ejecuta con la máquina virtual estándar de Python
Cero sobrecarga en tiempo de ejecución - se ejecuta como Python nativo sin penalización de rendimiento