Introducción al lenguaje de programación JARU
JARU es un lenguaje de programación de tipado dinámico diseñado para ofrecer control total de todas las piezas: el lenguaje, la máquina virtual y las herramientas que lo rodean.
Se ejecuta sobre una VM propia, compacta y eficiente, creada para ser predecible, extensible y fácil de integrar, tanto en sistemas de escritorio como en entornos con recursos limitados como microcontroladores ESP32, ESP32-P4 o ESP32-S31 (los dos últimos, RISC-V).
JARU prioriza una sintaxis clara y legible, con estructuras explícitas y sin dependencias innecesarias, lo que facilita la lectura, el mantenimiento y la depuración del código incluso en sistemas complejos.
Más que un lenguaje aislado, JARU está pensado como la base de un ecosistema completo, donde el entorno de ejecución, el depurador y el IDE comparten una visión común, lo que permite un nivel de control y coherencia difícil de alcanzar con lenguajes generalistas tradicionales.

La VM incluye recolector de basura y librerías estándar para acelerar el desarrollo: Math, Display, Sprite, Sound, GPIO, I2C, Http, MQTT, etc.
Características principales
- Tipos dinámicos — no necesitas declarar el tipo antes de asignar un valor.
- Sintaxis limpia — menos ruido, más intención.
- GC integrado — gestión automática de memoria.
- Multiplataforma — desarrolla en Windows y despliega en ESP32, ESP32-S3, ESP32-P4 y ESP32-S31.
- Librería estándar para IoT — módulos listos para hardware común.
Punto y coma (;)
El punto y coma al final de una instrucción es opcional. Úsalo para separar sentencias cuando escribes varias en la misma línea.
print("Hola"); print("mundo");
println("!")
Comentarios
- Una línea:
// ... - Varias líneas:
/* ... */
// Esto es un comentario de una línea
/*
Esto es un
comentario multilínea
*/
Indentación
Usa espacios o tabuladores (elige uno y sé consistente). Recomendado: 2 espacios.
Identificadores
Los identificadores nombran variables, funciones, clases, objetos, propiedades y métodos.
Deben empezar por una letra o por _, solo pueden llevar letras sin tilde, cifras y _, y no pueden ser palabras reservadas. JARU distingue mayúsculas y minúsculas.
| Válidos | Inválidos | Motivo |
|---|---|---|
nombre_persona | 1numero | No puede empezar por un número |
_precio | mi identificador | Espacios no permitidos |
miClase | class | Palabra reservada |
VAR_1 | #valor | Símbolo no alfanumérico |