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: + Use CCodeConstant for member access of constant symbol + Emit constants without initializer list in defines section [#440] + Add and use CCodeConstantIdentifier for accessing constants + Check required length of enum type name for GType support + Add missing check while overriding virtual async interface methods [#852] + Drop inconsistent space for ObjectType parameters + Accept CCode.type attribute on parameters [#876] + Fix CCodeUnaryExpression.write() for PREFIX_INCREMENT/PREFIX_DECREMENT - vala: + Improve error message for invalid handler of dynamic signal + Using SignalHandler.disconnect() is required for dynamic signals + Check for unavailable value-type of variable initializer [#1253] + Add [Profile] as known attribute for methods + Report error on missing gio-2.0 package for async constructors + Fix signals with generic return + parser: Split out Parser.parse_switch_section_statement() + parser: Better handling of misplaced switch sections [#1246] - genie: + Amend text of indent and dedent for error messages [#497] + Accept INTERR token before type arguments when parsing type [#1245] + Properly handle plain "get" or "set" property accessors [#1248] + "exception" is the expected string for TokenType.ERRORDOMAIN + Accept accessibility/async modifiers on "construct" creation methods [#1235] - girparser: Accept "sealed" for transformed records and compact classes - gtkmodule: Improve error message for invalid signal element in ui-file - build: Add "test-update" which passed UPDATE_EXPECTED=1 to refresh c-expected - tests: Rename colliding test cases to avoid conflicts * Bindings: - alsa: Add more API and fix a few things - gnome-desktop-3.0: Some parameter fixes - gstreamer: Cherry-pick bindings fixes from 0.56 - gstreamer-base-1.0: Some parameter fixes [#1255] - gtk4: Update to 4.5.0~cd9b7307 - pango: Cherry-pick bindings fixes from 0.56 ChangeLog ========= https://download.gnome.org/sources/vala/0.54/vala-0.54.4.changes (4.23K) Download ======== https://download.gnome.org/sources/vala/0.54/vala-0.54.4.tar.xz (3.73M) sha256sum: 6051270a2fc30de023c88562566f2f6043e67beb4da4b799c14cdf12048eb40c _______________________________________________ ftp-release-list mailing list ftp-release-list@gnome.org https://mail.gnome.org/mailman/listinfo/ftp-release-list