vala 0.55.90

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

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

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.


 * Various improvements and bug fixes:
  - codegen:
    + Emit G_DEFINE_AUTOPTR_CLEANUP_FUNC() for interfaces with base class [#1292]
    + Emit G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC() for structs [#1293]
    + Default to "has_type_id = false" for external error-domains
    + Emit GType definition for error domains [#699]
  - vala:
    + Catch and throw possible inner error of lock statements [#83]
    + Keep error-code symbol reference in callable expression context
    + Allow delegate without target to be used as constant type
  - girparser: Pick up type_id of error domains

 * Bindings:
  - glib-2.0: Update 2.70/72 symbols
  - gstreamer: Update from 1.21.0+ git main
  - vapi: Update GIR-based bindings

=========  (2.33K)

======== (3.77M)
  sha256sum: 8d8e3db452e407779e8ac4e3b0a5b1daa5460dce920ef379f7d74a36d30a5c33

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]