Saltar al contenido
ESOLANG · NOTAS DE VERSIÓN

Obfusku

Registro cronológico oficial de versiones y cambios publicados para Obfusku.

v1.0.0Base Estable
Ver release en GitHub

Primera versión estable de Obfusku: completa la transición desde el prototipo original a una arquitectura multi-crate limpia, respaldada por especificaciones normativas, inferencia Hindley-Milner y ejecución con pila constante.

Novedades y Cambios

  • Sintaxis simbólica Unicode congelada: λ, ≔, ⟡, ⟢, ▷, ☄, ☊, ❧.
  • Sistema de tipos primitivo cerrado: ⟁ Int, ⧆ Real, ⌘ Str, ○ Bool, ∅ Unit, sin coerciones numéricas implícitas.
  • Tipos algebraicos de datos (ADTs) definidos por el usuario con constructores de variantes y aplicaciones de tipo recursivas (List ▷ t).
  • Coincidencia de patrones exhaustiva con deconstrucción estructural, discriminantes booleanos (◉/◎) y comodines (_).
  • Excepciones mediante un ADT Exception cerrado con desenrollado de extensión dinámica vía raise (☄) y catch (☊).
  • Arquitectura modular: frontend y backend desacoplados en 7 crates (obfusku-core, -diagnostics, -syntax, -typecheck, -runtime, -fmt, -cli).
  • Inferencia de tipos Hindley-Milner: implementación del Algoritmo W con generalización polimórfica y unificación.
  • Optimización de llamadas de cola (TCO) basada en trampolín para profundidad de pila constante en recursión.
  • CLI unificada (obfusku) con run, check, fmt, inspect y repl, y diagnósticos multilínea con resaltado de spans.