About vala ========== 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, Type modules (Plugins) 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+ and many others from the GNOME Platform. 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. News ==== * Various improvements and bug fixes: - codegen: + Generated SimpleType structs don't have a type id + Avoid symbol clashes with "va_*" from "stdarg.h" + Access of inline allocated array is guaranteed to be non null [#1282] + Don't uncoditionally null check callback_func for GLib.Closure [#1282] + Access of stack allocated struct is guaranteed to be non null [#1282] + Use correct target/destroy of delegate field initializer [#1285] - gtkmodule: Improve UI parsing and handling of nested objects and properties - vala: + Show source location when reporting deprecations + Require lvalue access of delegate target/destroy "fields" [#857] + Transform assignment of an array element as needed [#889] [#1258] + Add missing TraverseVisitor.visit_data_type() + Make sure to drop our "trap" jump target in case of an error [#1287] + Move dynamic property errors to semantic analyzer pass + Free empty stack list for code contexts + Clear SemanticAnalyzer.current_{symbol,source_file} when not needed anymore - parser: Reduce the source reference of main block method to its beginning - parser: Improve handling of nullable VarType in with-statement - manual: Update from wiki.gnome.org * Bindings: - alsa: Add/fix *.alloca() functions - glib-2.0: Fix criticals in string.joinv() with arrays that start with null - gtk4: Specify sentinel for GtkAcessible methods - libgeoclue-2.0: Fix Simple.with_thresholds() contructor binding - libsoup-2.4: Cherry-pick bindings fixes from 0.56 - v4l2: Update V4l2.Capabilities and fix some inline arrays ChangeLog ========= https://download.gnome.org/sources/vala/0.54/vala-0.54.7.changes (3.79K) Download ======== https://download.gnome.org/sources/vala/0.54/vala-0.54.7.tar.xz (3.74M) sha256sum: 62079ca1ff02e5d17ae72aa9a5adc61ae6afdcfebb0d9f06063a36efbeaca0c7 _______________________________________________ ftp-release-list mailing list ftp-release-list@gnome.org https://mail.gnome.org/mailman/listinfo/ftp-release-list