Sobre el proyecto

Promise es un lenguaje de programación de tipado estático diseñado para la eficiencia de agentes de IA — y escrito por agentes de IA. Incluye propiedad explícita (inspirada en Rust), concurrencia estilo goroutine (inspirada en Go), manejo algebraico de errores, genéricos y coincidencia de patrones exhaustiva, sin efectos ocultos. Características clave: - Propiedad y préstamo con & (compartido), ~ (mutable) y * (punteros sin procesar) - Manejo algebraico de errores mediante !, ?^, ?! y manejadores con coincidencia de patrones - Genéricos con restricciones de tipo - Enums con datos y coincidencia de patrones exhaustiva - Interpolación de cadenas y concurrencia estilo goroutine (go expr devuelve Task[T]) - Generadores con yield y yield* - Metaanotaciones para metadatos declarativos - Sin macros ni compilación condicional — todo el código totalmente visible Catálogo mono-versionado: El ecosistema se distribuye como versiones de época atómicas (p. ej., 2026.0). Sin versiones por paquete ni archivos de bloqueo. Cada módulo se prueba junto como una unidad. Módulos de biblioteca estándar implementados: io, json, os, net, tls, path, math, strings, time, http, gzip, crypto, encoding. Planificados: ai, auth, cloud, markdown, mcp, msgpack, sandbox, schema, term, toml, yaml. Cadena de herramientas autocontenida: El compilador es un único binario (~15MB) que incluye la biblioteca estándar, los módulos del catálogo y el runtime. Configura su propia cadena de herramientas LLVM 22 en ~/.promise. Compilación nativa a LLVM para Linux, macOS, Windows y WASM. Uso: promise build file.pr # compila a ejecutable promise run file.pr # compila y ejecuta promise exec 'code' # ejecución en línea promise test file.pr # ejecuta pruebas promise check file.pr # solo verificación de tipos Compilación desde el código fuente requiere Go 1.22+, Java (para ANTLR4), clang y LLVM 22+. Promise se construye usando Bounded-Autonomy Software Engineering (BASE), una metodología donde los humanos definen la intención duradera y las puertas de calidad mientras los agentes de IA se encargan de la implementación. A partir de agosto de 2026, el proyecto incluye 18,869 pruebas en el compilador y el lenguaje. Estado: En desarrollo activo, no para uso en producción. El compilador es funcional de extremo a extremo, pero espere asperezas y fallos. Licencia: Apache-2.0 o MIT.