Skip to content

Altair v1.6.5vC — Lanzamiento Oficial de Altair Graphics y Soporte Nativo Raylib

Choose a tag to compare

@victios7 victios7 released this 25 Jul 11:12
· 43 commits to main since this release
3f5fdd5

🚀 Altair Lang v1.6.5vC — Raylib Release (Official)

¡La versión v1.6.5vC ya está aquí! Este lanzamiento introduce el soporte oficial y nativo para desarrollo de gráficos 2D y UI mediante la integración directa de Raylib, convirtiendo a Altair en una herramienta potente tanto para sistemas backend de alto rendimiento como para desarrollo de aplicaciones interactivas y videojuegos.

Gracias a las recientes optimizaciones del núcleo, el pipeline de compilación es capaz de procesar 10 millones de operaciones en solo 3 segundos entre compilación y ejecución.

⚠️ Nota importante sobre estabilidad: Al tratarse del lanzamiento inicial de la integración gráfica, el entorno se encuentra en fase activa de pruebas y puede contener errores inesperados. Todo reporte nos ayuda enormemente a mejorar el lenguaje. Si encuentras algún comportamiento extraño o fallo en el compilador, por favor repórtalo en nuestra comunidad:
📌 Canal de reportes: Altair Community - Foro y Soporte


🎨 Novedades principales: Gráficos Nativos

Olvídate de configurar pesados entornos de C++ o enlazar librerías dinámicas a mano. El compilador altairc ahora implementa un analizador semántico (sema.c) y generador de código (codegen.c) que detecta automáticamente el enlace de gráficos para inyectar y compilar todo en un único binario ligero y nativo.

📝 Ejemplo Limpio de Uso (demo_paint.at)

La sintaxis declarativa de bloques elimina el ruido visual y los puntos y comas en las cabeceras, facilitando la lectura del código fuente:

link graphics raylib

window
    title = "Paint Test"
    width = 800
    height = 600
    fps = 60
create window

loop
    clear skyblue
    
    draw text
        content = "Altair Graphics v1.6.5vC"
        x = 10
        y = 10
        size = 24
        color = white
    create draw
    
    draw rect
        x = 100
        y = 100
        width = 200
        height = 120
        color = red
    create draw
    
    draw circle
        x = 500
        y = 200
        radius = 60
        color = gold
    create draw
break

⚙️ Optimizaciones bajo el capó (v1.6.x Core)

Esta versión hereda las mejoras críticas de estabilidad distribuidas en nuestro ecosistema:

  • Objetos dinámicos ultraligeros: Reducción del consumo de memoria en un 99.5% (~50 bytes por instancia en lugar de los 10KB originales).
  • Gestión de Cadenas O(1)/O(n): Eliminación completa de las fugas masivas de memoria al concatenar texto gracias al path de asignación única (malloc).
  • Transferencia de Propiedad (Ownership): Implementación de altair_var_set_own para mover punteros de datos en la CPU en lugar de clonar bytes redundantes.

📦 Distribución y Binarios Multiplataforma

A través de nuestro pipeline automatizado en la nube (altair-builder), los empaquetados multiplataforma se generan directamente desde la terminal en un tiempo récord de 11 segundos:

  • 🐧 Linux: Paquete nativo .deb listo para sistemas basados en Debian/Ubuntu.
  • 🪟 Windows: Instalador autoejecutable .exe compilado mediante scripts de NSIS.
  • 🍏 macOS: Soporte de instalador .pkg nativo optimizado para arquitecturas Apple Silicon (arm64).

🛠️ Correcciones en esta Build

  • Corregida la interpretación del lexer que confundía las llamadas nativas de bloques con variables sueltas (raylib_var, key_var).
  • Ajustada la consistencia multiplataforma reemplazando fmemopen por archivos temporales en Windows para la restauración de Snapshots.

Altair Community — Desarrollado con pasión, compilado nativamente a C.