Vala

Erstaunt stellte ich gestern fest das der neue Standardfotomanager unter Ubuntu (Shotwell) in Vala geschrieben ist. Bei Vala handelt es sich um eine Programmiersprache welche stark an C# und Java angelehnt ist. Dabei benötigt sie aber keine Laufzeitumgebung. Man hat dann also eine Sprache welche eine moderne Syntax bietet und keine Laufzeitumgebung benötigt sondern nativ auf dem System läuft. Im Gegensatz zu .NET/Mono hat die Sprache keinen Garbage Collector sondern implementiert automatische Referenzzählung zur Speicherverwaltung.

Beim durchschauen der Syntax (verglichen mit C#) sind mir einige Unschönheiten aufgefallen welche einige Konstrukte nicht sehr elegant aussehen lassen, aber das muss man sich wahrscheinlich mal in einem kleinen Projekt anschauen. Es ist möglich mit Vala plattformunabhängige Anwendungen zu schreiben. Als Standardbibliothek steht einem die glibc sowie die Geelib zur Verfügung. Der Vala Compiler wandelt den Quellcode in C Code um und kompiliert diesen dann anschließend. Definitiv eine Sprache die man sich mal anschauen sollte :) Die offizielle Seite von Vala ist unter http://live.gnome.org/Vala zu finden.

Weitere Informationen gibt es unter:
http://de.wikipedia.org/wiki/Vala_%28Programmiersprache%29

Vala

Bei Vala habe ich im ersten Moment an einen der Androiden aus Star Trek denken müssen :) Dabei handelt es sich dabei um eine Programmiersprache von Jürg Billeter und Raffaele Sandrini. Diese Sprache wurde 2006 entwickelt und hat sich dabei zum Ziel gesetzt eine moderne Sprache zu entwickeln welche Programme erzeugt welche ohne irgendwelche zusätzlichen Laufzeitbibliotheken lauffähig sind.

Im Gegensatz zu anderen Compilern wird der Valaquelltext erst nach C konvertiert bzw. übersetzt und dann compiliert. Ein Hello World Programm in Vala sieht dann so aus:

using GLib;

public class Test.HelloObject : GLib.Object {

public static void main(string[] args) {

stdout.printf("Hello, World");
}
}

Weitere Informationen gibt es unter:
http://de.wikipedia.org/wiki/Vala_(Programmiersprache)
http://www.linux-magazin.de/online_artikel/gobject_ohne_kopfschmerzen
http://www.linux-magazin.de/online_artikel/vorteile_kombinieren
http://live.gnome.org/Vala