Congratulations for this release! 
Can you explain the new GBoxed-based memory management in vala? 
I know GBoxed is a generic wrapper for C structures, that only needs
copy and free functions. And I know that in vala a type get's boxed when
you use the '?' operator, like in 'string? s = null;'. 
So what is new for the user? Or is this just for bindings?
best regards
Jörn








> We are pleased to announce version 0.9.3 of Vala, a compiler for the
> GObject type system.
> 
> Vala 0.9.3 is now available for download at:
>    http://download.gnome.org/sources/vala/0.9/
> 
> Changes since 0.9.2
>  * Support newlines in double quoted string literals.
>  * Add experimental support for main blocks.
>  * Add experimental vala tool to compile and run code.
>  * Initial support for generic delegates.
>  * Support using GClosure for delegate parameters.
>  * Support GBoxed-based memory management.
>  * Improvements to the .gir reader and writer.
>  * Various improvements to the Dova profile.
>  * Many bug fixes and binding updates.
> 
> 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.
> 
> 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. All that
> is needed to use a library with Vala is an API file, containing the class
> and method declarations in Vala syntax. Vala currently comes with
> bindings for GLib and GTK+. It's planned to provide generated bindings for
> the full GNOME Platform at a later stage.
> 
> 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
> 
> 
> Jürg Billeter
> 
> _______________________________________________
> vala-list mailing list
> [email protected]
> http://mail.gnome.org/mailman/listinfo/vala-list


_______________________________________________
vala-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/vala-list

Reply via email to