En informática, Stalin ( Static Language ImplementatioN ) es un lenguaje de programación , un compilador Scheme de programas completos por lotes con optimización agresiva escrito por Jeffrey Mark Siskind. Utiliza análisis avanzado de flujo de datos e inferencia de tipos y una variedad de otros métodos de optimización para producir código. Stalin está destinado a su uso en producción para generar un ejecutable optimizado .
El compilador se ejecuta lentamente, con poco o ningún soporte para depuración u otras sutilezas. Se admite el esquema R4RS completo, con algunas omisiones menores que rara vez se encuentran. La interfaz con bibliotecas C externas es sencilla. El compilador realiza un análisis de vida útil y, por lo tanto, no genera tanta basura como podría esperarse, pero la recuperación global de almacenamiento se realiza mediante el recolector de basura Boehm .
El nombre es una broma: " Stalin optimiza brutalmente".
Stalin es un software libre y de código abierto , licenciado bajo una Licencia Pública General GNU (GPL) y está disponible en línea.
Véase también
Referencias
Enlaces externos
Sitio web oficial
- Un proyecto de Google Code: incluye una versión para Windows y una GUI
- Declaración de investigación de Siskind (compara Stalin con otros compiladores de Scheme y afirma que "STALIN a menudo genera código que supera al código C y Fortran escrito a mano").
- Conversión de cierre ligero dirigida por flujo de Siskind (presenta un método de conversión de cierre ligero que se basa en los resultados de análisis de flujo interprocedimental, accesibilidad, puntos a y escape de todo el programa, utilizados en el compilador Stalin)