🚀 Lenguaje GR - Extensión Oficial de Visual Studio Code
Esta extensión proporciona soporte integral de desarrollo para el Lenguaje GR, un lenguaje de programación de alto nivel diseñado para el curso de Compiladores (Fase III). Nuestra herramienta transforma archivos .gr en código Java puro y ejecutable, permitiendo un flujo de trabajo fluido desde la escritura hasta la ejecución.
✨ Características Principales
- 🎨 Resaltado de Sintaxis (Syntax Highlighting): Esquema de colores profesional para identificar tipos, estructuras de control y literales.
- 🛡️ Validación Integral: Análisis automático en tiempo real:
- Léxico: Verificación de caracteres y tokens válidos.
- Sintáctico: Validación de la estructura gramatical.
- Semántico: Control de tipos, declaración de variables y alcance.
- 🧱 Fragmentos de Código (Snippets): Estructuras predefinidas (if, while, para, funciones) para un desarrollo más veloz.
- ⚙️ Compilación Unificada: Transforma tu código
.gr a .java y lo ejecuta con un solo clic.
📋 Requisitos del Sistema (Prerrequisitos)
Para que la extensión funcione correctamente y puedas compilar tus programas, asegúrate de tener instalado lo siguiente:
- Python 3.x: El compilador base está escrito en Python.
- Asegúrate de que
python esté en tu variable de entorno PATH.
- Librería ANTLR4 para Python: Ejecuta el siguiente comando en tu terminal:
pip install antlr4-python3-runtime==4.13.2
3. **Java JDK (8 o superior):** Necesario para compilar y ejecutar el código Java generado.
* Verifica ejecutando `javac -version` y `java -version` en tu terminal.
---
# ⚙️ Requisitos e Instalación
Antes de ejecutar el compilador, asegúrate de tener instaladas las siguientes dependencias.
---
**## 1. Instalar Python**
Este proyecto utiliza :contentReference[oaicite:0]{index=0} para ejecutar el compilador y los analizadores.
Verificar si Python está instalado:
```bash
python --version
2. Instalar la librería de ANTLR4 para Python
El proyecto utiliza Antlr4 para el análisis léxico y sintáctico del lenguaje.
Instalar la librería:
python -m pip install antlr4-python3-runtime==4.13.2
También puede utilizarse:
pip install antlr4-python3-runtime==4.13.2
3. Verificar instalación de ANTLR4 Runtime
Este comando permite comprobar que la librería se instaló correctamente y verificar la versión.
pip show antlr4-python3-runtime
La salida esperada debe incluir:
Version: 4.13.2
4. Instalar Java JDK
ANTLR requiere Java 24.0 o 21.0 para generar y ejecutar analizadores.
Instalar Java mediante Winget:
winget install Oracle.JDK.24
Verificar instalación:
java -version
javac -version
🛠️ Solución de errores comunes
Error: No module named 'antlr4'
Significa que la librería de ANTLR4 no está instalada correctamente.
Solución:
python -m pip install antlr4-python3-runtime==4.13.2
Error: 'pip' no se reconoce como un comando
Usar:
python -m pip install antlr4-python3-runtime==4.13.2
💡 Resumen para el usuario:
Si alguno de estos comandos devuelve un error de "comando no encontrado", significa que el programa no está instalado o no ha sido agregado al PATH del sistema.
🛠️ Instalación
Instalación Manual (.vsix)
Si tienes el archivo empaquetado (ej. lenguaje-gr-1.7.2.vsix):
- Abre Visual Studio Code.
- Ve a la vista de Extensiones (
Ctrl+Shift+X).
- Haz clic en el menú de tres puntos (
...) en la parte superior derecha.
- Selecciona Install from VSIX....
- Busca y selecciona el archivo
.vsix de la extensión.
🚀 Cómo Usar la Extensión
- Crea un archivo: Guarda un nuevo archivo con la extensión
.gr (ejemplo: hola.gr).
- Escribe tu código: Utiliza la sintaxis de Lenguaje GR (ver ejemplo abajo).
- Compila y Ejecuta:
- Haz clic en el icono de Reproducción (Play) ▶️ ubicado en la esquina superior derecha del editor.
- O presiona
Ctrl+Shift+P y busca el comando: Compilar y Ejecutar GR.
- Ver resultados: Se abrirá una terminal integrada donde verás el proceso de traducción y la ejecución de tu programa en Java.
📚 Especificaciones del Lenguaje GR
📋 Tipos de Datos
| Tipo |
Palabra Reservada |
Equivalente Java |
| Entero |
entero |
int |
| Decimal |
decimal |
double |
| Texto |
texto |
String |
| Booleano |
booleano |
boolean |
| Vacío |
vacio |
void |
🛠️ Estructuras y Palabras Clave
Control de Flujo: si, sino, mientras, para.
Funciones: Definidas con su tipo de retorno (o vacio) seguidas del nombre.
Entrada/Salida: - leer(variable): Lee desde consola.
escribir(valor): Imprime en consola.
Módulos: importar "archivo.gr" para reutilizar código.
Lógica: verdadero, falso.
💻 Ejemplo de Código
// Programa: Cálculo de Factorial
entero factorial(entero n) {
si (n <= 1) {
retorno 1;
}
retorno n * factorial(n - 1);
}
vacio inicio() {
escribir("--- COMPILADOR GR ---");
entero numero = 5;
entero resultado = factorial(numero);
escribir("El factorial de 5 es:");
escribir(resultado);
}
inicio();
🔍 Solución de Problemas (Troubleshooting)
- "Python no se reconoce": Asegúrate de que Python esté instalado y agregado al PATH de Windows.
- "ModuleNotFoundError: No module named 'antlr4'": Ejecuta
pip install antlr4-python3-runtime==4.13.2.
- Error en la terminal al compilar: Revisa que no tengas errores semánticos (como usar una variable no declarada) reportados por el compilador en la terminal.
👥 Equipo de Desarrollo
- Gerardo Avila
- Ruddy Cuyan
Universidad Rafael Landívar Facultad de Ingeniería Compiladores - Fase III (2026)
La verdadera máquina de Compilar