[ANNOUNCE] Vala 0.3.4 - Compiler for the GObject type system

Printed from http://www.compatdb.org/support/topics/183271_announce_vala_0_3_4_compiler_for_the_gobject_type_system.html

[ANNOUNCE] Vala 0.3.4 - Compiler for the GObject type system - 06/27/08 02:56 PM

We are pleased to announce version 0.3.4 of Vala, a compiler for the
GObject type system.

Vala 0.3.4 is now available for download at:
http://download.gnome.org/sources/vala/0.3/

Changes since 0.3.3
* Various improvements to D-Bus client and service support.
* Basic support for detailed signals.
* Check types of printf arguments.
* Support `in' operator for Gee.Collection and Gee.Map (Jamie McCracken)
* Add libgsf-1 bindings (Michael Lawrence)
* Add loudmouth-1.0 bindings (Ali Sabil)
* Updates to the GLib, GTK+, and GStreamer bindings.
* Many bug fixes.

Vala is a new programming language that aims to bring modern programming
language features to GNOME developers without imposing any additional
runtime requirements and without using a different ABI compared to
applications and libraries written in C.

valac, the Vala compiler, is a self-hosting compiler that translates
Vala source code into C source and header files. It uses the GObject
type system to create classes and interfaces declared in the Vala source
code. It's also planned to generate GIDL files when gobject-
introspection is ready.

The syntax of Vala is similar to C#, modified to better fit the GObject
type system. Vala supports modern language features as the following:

* Interfaces
* Properties
* Signals
* Foreach
* Lambda expressions
* Type inference for local variables
* Generics
* Non-null types
* Assisted memory management
* Exception handling

Vala is designed to allow access to existing C libraries, especially
GObject-based libraries, without the need for runtime bindings. Each to
be used library requires a Vala API file at compile-time, containing the
class and method declarations in Vala syntax. Vala currently comes with
bindings for current versions of GLib, GTK+, and many more.

Using classes and methods written in Vala from an application written in
C is not difficult. The Vala library only has to install the generated
header files and C applications may then access the GObject-based API of
the Vala library as usual. It should also be easily possible to write a
bindings generator for access to Vala libraries from applications
written in e.g. C# as the Vala parser is written as a library, so that
all compile-time information is available when generating a binding.

More information about Vala is available at

http://live.gnome.org/Vala


The Vala Team

Jürg Billeter and Raffaele Sandrini


_______________________________________________