vala 0.45.3



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:
  - vala: Add Symbol.is_extern and use/set is accordingly (#745)
  - codegen:
    + Don't write declaration of extern symbols with given header (#745)
    + Real structs are allowed by simple generics and passed as reference (#819)
    + Assign GValue result of function calls to temp-var on copy_value (#819)
  - build: Pass -no-undefined when linking libvalaccodegen (#820)

 * Bindings:
  - glib-2.0: Add binding for g_strv_equal() (since 2.60)
  - glib-2.0: Bind strcmp0 as GLib.CompareFunc<string?> (#810)
  - glib-2.0: Fix RecMutexLocker binding
  - glib-2.0: Add new symbols from 2.62
  - gstreamer: Update from 1.17.0+ git master
  - gtk4: Update to 3.96.0+b05d1676
  - xtst: Fix signature of XTest.fake_relative_motion_event()
  - vapi: Update GIR-based bindings


ChangeLog
=========
https://download.gnome.org/sources/vala/0.45/vala-0.45.3.changes  (2.19K)

Download
========
https://download.gnome.org/sources/vala/0.45/vala-0.45.3.tar.xz (3.20M)
  sha256sum: 2ba0e8a1bde7480fd34bb478378fd25d2d9ca1c8439d5d3c52146b39633ff6a6



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