Estoy buscando un lenguaje de sistema de nivel superior, si es posible, adecuado para la verificación formal, que se compila en C estándar, de modo que se pueda ejecutar multiplataforma con (relativamente) poca sobrecarga.Lenguaje de sistema de alto nivel que compila a c?
Los dos más prometedores tales lenguajes He tropezado durante los últimos días son:
BITC - Si bien los objetivos de diseño de este lenguaje se ajustan a mis necesidades (que incluso soporta el paradigma funcional), se está en un estado muy inestable, la documentación está desactualizada y, en general, parece una posibilidad muy remota para un proyecto del mundo real.
Lisaac - Es compatible con el diseño por contrato, que es muy bueno y tiene una sobrecarga de rendimiento relativamente bajo. Sin embargo, el sitio web está muerto, no ha habido una nueva versión desde '08 y, en general, parece que el idioma está muerto.
También me gustaría señalar que no está destinado para un sistema en tiempo real, por lo que un GC o, en general, no determinismo (en el sentido en tiempo real), no es un problema.
El proyecto implica principalmente el procesamiento de audio, aunque tiene que ser multiplataforma.
Supongo que alguien me indicará la respuesta obvia: "plain ol 'C". Si bien es verdaderamente multiplataforma y muy efectiva, la cantidad de código probablemente sea mayor.
EDITAR: Debo aclarar que me refiero a cross-platform AND cross-architecture. Es por eso que considero solo los idiomas, compilados para C en primer lugar, pero si me puede señalar otro ejemplo, estaría agradecido :)
¿Has mirado C++? Es (puede ser) un lenguaje de sistemas de alto nivel. –
Sí, pero la complejidad introducida por C++ es, creo, no vale la pena el problema adicional. Además, cada compilador de esta tierra admite una parte diferente de los estándares de idioma y tiene, por ejemplo, excepciones, es un desastre. Lo mismo aplica para RTTI y generalmente cada característica que hace que C++ tenga un nivel superior. –
Si realmente no te gusta C++, puedes echar un vistazo a D que tiene un GC entre otras cosas y es menos complejo que C++. Sin embargo, es mucho menos popular y no tiene tantas bibliotecas, pero puede interoperar con código C como C++. Ninguno de estos lenguajes compila en realidad a C, sino que compilan en código máquina. –