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.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.