Genie, el mejor lenguaje para hablar a Gnome

Logo de Gnome

Según Gnome, Genie es un lenguaje de programación moderno que permite crear y usar objetos GObject de forma nativa. Tiene una sintaxis realmente ‘limpia, clara y concisa‘ y dicen en su página web que se han inspirado en Python, Boo, D y Delphi (toma castaña). Gnome ya tenía un lenguaje propio, Vala, y Genie parece ser muy similar en funcionalidades aunque con Genie todo es mucho más simple y directo al grano.

Nos indican que, al igual que Vala, Genie tiene unas ventajas importantes: que el rendimiento y el uso de recursos debería ser similar al de los mismos programas hechos en C, que Genie no viene inflado y sobrecargado como otros lenguajes similares de alto nivel que utilizan máquinas virtuales (Python, Mono, Java) y que las clases de Genie son realmente GObjects por lo que Genie puede ser usado para crear widgets y librerías donde los GObjects son esenciales para unirse a otros lenguajes.

 

Es importante resaltar que Genie se compila y genera un ELF pata negra, es decir, que no es un lenguaje interpretado, por lo que no es de extrañar el rendimiento que tiene. Echando un vistazo al lenguaje vemos una sintaxis con cierto aire a Python, aunque con sorpresas como ‘switch’ o tipos estáticos por ejemplo.

La integración con GTK es simple, como muestra un botón (nunca mejor dicho):

 

 


/* GTK+ Genie Sample Code – compile with valac —pkg gtk+-2.0 hello-gtk.gs */
uses Gtk
init Gtk.init (ref args) var test = new TestWindow () test.show_all () Gtk.main ();
class TestWindow : Window init title = ‘Test Window’ default_height = 250 default_width = 250 window_position = WindowPosition.CENTER destroy += Gtk.main_quit var button = new Button.with_label (‘Click Me’) button.clicked += def (btn) title = ‘Hello World’ btn.label = ‘Hello World’ add (button)

 

 

 

 

Para compilar este ejemplo necesitareis tener instalado el compilador de Vala y las librerias de desarrollo de Gtk+2.0, que en Debian/Ubuntu se instala con:

$ sudo aptitude install valac libgtk2.0-dev

Y compilamos, como viene en el comentario del código con (suponiendo que el fichero se llame test.gs):

$ valac --pkg gtk+-2.0 test.gs

Y probamos el ejecutable con:

$ ./test

Obteniendo como resultado una ventana con un botón que si lo pulsamos cambia el texto, algo muy simple pero nos da cuenta de lo poco que hace falta para empezar a programar aplicaciones en Gtk con Genie.

 

Más información | Gnome Live!: Genie
Fuente del ejemplo de código | jamiecc blog

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s