blaise
Blaise es un compilador de Pascal moderno y autocontenido para el ecosistema del año 2020s. Elimina décadas de legado, ofrece memoria segura con contadores de referencia automática (ARC), soporte nativo UTF-8 y una arquitectura unificada sin dependencias externas.
Ficha actualizada 22 sept 2026, 18:27 · upstream 22 sept 2026, 16:22 · release v0.14.0
Qué es blaise
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
Blaise reimagina la experiencia de Pascal eliminando la complejidad acumulada durante tres décadas. Su enfoque central es la productividad del desarrollador, la seguridad en memoria y el rendimiento alto. A diferencia de Delphi (propiedad de Embarcadero) o Free Pascal (con múltiples modos de lenguaje), Blaise ofrece un solo modo de lenguaje mantenido con calidad superior. El sistema de tipos incluye un único tipo de string basado en UTF-8 con conteo de referencia automático, y el modelo de memoria es unificado donde tanto TObject como TInterfacedObject comparten contadores de referencia automáticos. La interfaz de programación de aplicaciones (API) se define mediante vtables compilados a tiempo de enlace, eliminando la necesidad de GUIDs COM. Los generadores de tipos son reificados: la monomorfización ocurre en el momento del compilado sin erasure de tipos.
- Desarrollo de software en Pascal moderno con soporte nativo para x86-64 y FreeBSD
- Aplicaciones que requieren memoria segura y gestión automática de recursos
- Entornos de desarrollo autocontenido sin dependencias externas ni compiladores legacy
- Desarrollo de microservicios y aplicaciones distribuidas con soporte de fibras (async/fibre)
- Desarrollo de sistemas de notas y documentación web (ej. Luhnmann) sobre HTTP
- Compilador completamente autocontenido que se ejecuta desde el binario del propio compilador, eliminando la necesidad de FPC o Delphi
- Soporte nativo para x86-64 y FreeBSD con un solo modo de lenguaje sin necesidad de switches como {$mode}
- Arquitectura unificada: solo un tipo de string (UTF-8 con conteo de referencia) y un modelo de memoria común entre TObject y TInterfacedObject
- Generadores de tipos reificados que realizan la monomorfización en tiempo de compilación, eliminando el erasure de tipos
- Soporte de depuración nativa a través del formato OPDF (OPDF Debugger Format) como estándar, sin necesidad de DWARF
- Sistema de pruebas con 4977+ tests que se ejecutan en CI sobre Linux y FreeBSD
- No soporta Windows ni macOS nativamente; el soporte para estos sistemas operativos está programado pero no implementado
- El backend QBE es opt-in mediante la flag --backend qbe, lo que añade una capa adicional de configuración al proyecto
- La compilación del backend vendored QBE requiere un compilador C externo (gcc o clang) para generar y enlazar el código fuente vendorado
- No incluye herramientas de migración automática a Pascal moderno desde FPC/Delphi, aunque existe una herramienta externa disponible
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.
Para desplegar Blaise, se recomienda ejecutar la cadena de compilación desde un binario previamente descargado del repositorio releases/. El proceso de bootstrap se realiza con un único comando que compila el RTL desde fuente. Para producción, se puede utilizar PasBuild para ejecutar todo el ciclo de compilación y pruebas en una sola línea: pasbuild compile -m blaise-compiler --compiler compiler/target/blaise y pasbuild test -m blaise-compiler --compiler compiler/target/blaise. Se recomienda mantener un binario actualizado del compilador como punto de partida, ya que cada nueva versión genera nuevos archivos de objeto que deben ser reproducidos en el entorno de desarrollo.
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.