Vala (lenguaje de programación)
lenguaje de programación / De Wikipedia, la enciclopedia encyclopedia
Estimado Wikiwand AI, Seamos breves simplemente respondiendo estas preguntas clave:
¿Puede enumerar los principales datos y estadísticas sobre Vala (lenguaje de programación)?
Resumir este artículo para un niño de 10 años
Vala es un lenguaje de programación creado con el objetivo de acercar las características de los lenguajes modernos a C, sin requisitos adicionales de tiempo de ejecución y con pocos costos, centrado en los objetos de la biblioteca GObject. Ha sido desarrollado por Jürg Billeter y Raffaele Sandrini. Actualmente es desarrollado y mantenido por Rico Tzschichholz. La sintaxis se inspira en C#, con leves modificaciones para adaptarse mejor al sistema de objetos de GObject.[1]
Vala | ||
---|---|---|
Desarrollador(es) | ||
Jürg Billeter, Raffaele Sandrini, Luca Bruno, Rico Tzschichholz https://wiki.gnome.org/Projects/Vala | ||
Información general | ||
Extensiones comunes | .vala, .vapi, .gir | |
Paradigma | multiparadigma: orientado a objetos, imperativo, estructurado | |
Apareció en | 2006 | |
Última versión estable | 0.48.9 (10 de agosto de 2020 (3 años, 8 meses y 6 días)) | |
Última versión en pruebas | 0.49.91 (23 de agosto de 2020 (3 años, 7 meses y 24 días)) | |
Sistema de tipos | fuerte, estático | |
Influido por | C, C++, C#, Java, D, Pawn | |
Sistema operativo | Toda plataforma soportada por GLib | |
Licencia | LGPL 2.1+ | |
Para la gestión de memoria, GObject usa el sistema de conteo de referencias. En C, el programador debe gestionar la adición y la eliminación de referencias a mano, en cambio, en Vala, la gestión de estas referencias es automática, siempre que el programador use los tipos referenciales incluidos en el lenguaje en lugar de usar punteros comunes. El único detalle del que debe preocuparse es de evitar que se generen listas circulares, pues en ese caso este sistema de gestión de memoria no funcionará correctamente.
Valac, el compilador de Vala, traduce el código Vala en código C, un lenguaje intermedio (tal como hace Java a Bytecode o C# al CIL), en lugar de ser compilado directamente en ensamblador, que luego puede compilarse en cualquier plataforma soportada por GLib, con cualquier compilador de C estándar.
Además, Valac también admite otra sintaxis de entrada, es el caso de Genie, que funciona de la misma forma que Vala pero con una sintaxis inspirada en Python.[2] De hecho, Vala y Genie pueden ser usados juntos para crear un mismo programa.