vala 0.55.2



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
====

 * Highlights:
  - Add support for async main and yield statements in main block [#1275]
  - Add foreach statement support for GLib.Array and GLib.Sequence

 * Various improvements and bug fixes:
  - codegen:
    + 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]
    + Write array length of formal parameters with fixed length
  - vala:
    + Require lvalue access of delegate target/destroy "fields" [#857]
    + Implement missing YieldStatement.accept()
    + Add support to infer return type of dynamic signals
    + Transform assignment of an array element as needed [#889] [#1258]
  - 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:
  - glib-2.0,gio-2.0: Update 2.72 symbols
  - gstreamer: Update from 1.19.3+ git master
  - gtk4: Update to 4.6.0+a092986a
  - glib-2.0: Fix criticals in string.joinv() with arrays that start with null
  - vapi: Add linux-media bindings (linux/media.h)
  - alsa: Add/fix *.alloca() functions
  - posix: Add limits.h binding
  - v4l2: Update V4l2.Capabilities and fix some inline arrays


ChangeLog
=========
https://download.gnome.org/sources/vala/0.55/vala-0.55.2.changes  (3.83K)

Download
========
https://download.gnome.org/sources/vala/0.55/vala-0.55.2.tar.xz (3.76M)
  sha256sum: 746e202c6833c520bb590ce996d2014a1937cc3776dcf0234d5f699a14ab6540



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