Genie
Website: wiki.gnome.org/Projects/Genie
Proiectat de: Jamie McCracken
Genie este un limbaj modern de programare de nivel înalt, de înaltă calitate, în dezvoltare din 2008.
A fost conceput ca o dialect alternativă, mai simplă și mai curată pentru compilatorul Vala, păstrând în același timp aceeași funcționalitate a limbajului Vala.
Genie folosește același compilator și biblioteci ca Vala; Cei doi pot fi într -adevăr folosiți unul lângă celălalt.
Diferențele sunt doar sintactice.
Sintaxa lui Genie este derivată din numeroase limbi moderne precum Python, Boo, D și Delphi.
În vena Python, Genie folosește indentarea, mai degrabă decât delimitatorii de bloc explicit (cum ar fi, de exemplu, paranteze cret) pentru a delimita blocurile.
La fel ca Vala, Genie folosește sistemul de tip Gobject pentru a crea clase și interfețe declarate în codul sursă genie, fără a impune cerințe suplimentare de rulare (adică, spre deosebire de Python, Java sau C#, nu necesită o mașină virtuală).
Genie permite accesul la bibliotecile C, în special la cele bazate în GoBject (cum ar fi GTK), fără a utiliza o interfață binară de aplicație diferită (ABI).
În timpul compilării, codul este tradus mai întâi în fișierele C sursă și antet, care sunt apoi compilate la codul mașinii specifice platformei, folosind orice compilator C disponibil, cum ar fi GCC, permițând astfel dezvoltarea software cu platformă încrucișată.
Programele dezvoltate în Vala și Genie nu depind de mediul desktop Gnome, necesitând de obicei doar glib.