Saltar al contenido principal

Introducción al lenguaje de programación JARU

JARUDinámicoIoTESP32

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.

Vista introductoria de JARU con el IDE, el lenguaje y el flujo de desarrollo para ESP32

Productividad

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.

semicolon.aru
print("Hola"); print("mundo");
println("!")

Comentarios​

  • Una línea: // ...
  • Varias líneas: /* ... */
comments.aru
// 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álidosInválidosMotivo
nombre_persona1numeroNo puede empezar por un número
_preciomi identificadorEspacios no permitidos
miClaseclassPalabra reservada
VAR_1#valorSímbolo no alfanumérico

¡Hola, mundo! (y algo más)​

hello.aru
print("¡Hola, mundo!");

// print no añade salto de línea; println sí
print("Hola"); print(", ");
println("mundo");

  • print() no añade salto de línea.
  • println() sí añade salto de línea.
print-vs-println.aru
print("Hola"); print(", "); println("mundo");

¿Te resultó útil esta página? Continúa con Tipos de datos y Variables y constantes.