revl
revl es un lenguaje para software que permite composibilidad espaciotemporal reversible y orquestación, basado en el paradigma de Cordis. Permite cargar, desactivar y reemplazar componentes dinámicamente sin dejar residuos, manteniendo coherencia de dependencias.
Ficha actualizada 23 sept 2026, 15:08 · upstream 23 sept 2026, 15:00 · release v2.0.0
Qué es revl
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
revl es un lenguaje para software que permite composibilidad espaciotemporal reversible (Cordis paradigm). Los componentes pueden cargarse, desactivarse y hot-swap dentro de sistemas en vivo. Las propiedades que hacen posible la reversibilidad se verifican al tiempo de compilación: el desactivado no deja residuos, las dependencias permanecen coherentes y nada llega a un estado que nunca fue declarado. El núcleo del cambio es pequeño e estricto: cada mutación está escrita junto a su inversa, y una mutación sin inversa (que cruza la frontera de sistema) debe llevar un marcador emit.
- Orquestación de microservicios con hot-swap sin downtime
- Migraciones de componentes entre runtime tiers (Python → Rust) con rollback automático
- Composición de servicios en tiempo real donde el estado debe ser reversible
- Integración segura de agentes autónomos que generan código dinámicamente
- Validación de dependencias antes del despliegue para evitar ciclos o referencias circulars
- Auditoría de componentes por sus efectos emitidos sin necesidad de logs externos
- El controlador de borramiento verifica que cada efecto tenga su inversa explícita, no se asume
- La verificación estática detecta errores en el tiempo de ejecución antes del despliegue
- Un componente puede declarar capacidades y ejecutarlas dentro de un sandbox sin necesidad de permisos dinámicos
- El compilador actúa como gate de admisión para agentes generados por IA, rechazando componentes no validados
- La composición se realiza sobre una interfaz común (IR) que permite interoperabilidad entre múltiples runtime tiers
- Los efectos emitidos son verificados en cada tier de ejecución, garantizando consistencia transversal
- El lenguaje es sintáctico y semánticamente correcto pero no tiene un tipo de memoria explícito (no hay GC ni gestión de heap)
- La interoperabilidad entre runtime tiers requiere que todos los componentes implementen la misma interfaz emitida
- La verificación estática puede fallar si el autor del código introduce incoherencias sutiles en el tiempo de ejecución
- No existe un mecanismo para depurar efectos no reversibles durante la compilación, solo se detectan al ejecutar
- El diseño asume que todos los componentes son escritos por humanos o agentes con conocimiento del sistema; no soporta código generado puramente por IA sin validación
Capturas del proyecto
Imágenes reales detectadas en la documentación del repositorio.
Perfil de infraestructura
Estimación inicial derivada del repositorio y de los servicios detectados.
Despliegue detectado
Qué señales reales de instalación hemos encontrado.
Instala el paquete editable con `uv venv && uv pip install -e ".[test]"`. Usa la CLI para compilar: `revl compile examples/user_cache.rvl` y ejecutar pruebas. Para despliegue, usa `make demo` (hot-swap, migración y rollback) o `make demo-flagship` (un agente con 10 garantías). El compilador actúa como gate de admisión para agentes generados por IA: los drafts se editan en servidor y nada se ejecuta hasta que el mismo compilador autorice. Para interoperabilidad entre runtime tiers, usa la interfaz emitida común documentada en docs/interop-bridge.md.
Stack y dependencias
Componentes inferidos a partir de manifests, configuración y documentación.
Puede sustituir a
Relaciones detectadas por el análisis del repositorio y su categoría.
Experiencia real de la comunidad
Ayuda a contrastar la estimación automática con instalaciones reales.
Todavía no hay datos comunitarios para este proyecto.