steveno/vala


Vala Programming Language Clone

http://steveno.github.com/vala

License: LGPL-2.1

Language: Vala


Vala is a programming language that aims to bring modern programming
language features to GNOME developers without imposing any additional
runtime requirements and without using a different ABI compared to
applications and libraries written in C.

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

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 . It's planned to provide generated bindings for
the full GNOME Platform at a later stage.

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.

More information about Vala is available at

	http://live.gnome.org/Vala/

Project Statistics

Sourcerank 5
Repository Size 19.2 MB
Stars 0
Forks 0
Watchers 1
Open issues 0
Dependencies 0
Contributors 122
Tags 92
Created
Last updated
Last pushed

Top Contributors See all

juergbi Luca Bruno Evan Nemerson Allison Lortie Dr. Mickey Lauer Didier Villevalois Marc-Andre Lureau Ali Sabil Michal Hruby Raffaele Sandrini JaapHaitsma Thijs Vermeir flobrosch Rob Taylor Philip Withnall Víctor Manuel Jáquez Leal Sebastian Pölsterl Abderrahim Kitouni Zeeshan Ali Khan Levi Bard

Recent Tags See all

0.18.0 September 24, 2012
0.17.7 September 16, 2012
0.17.6 September 03, 2012
0.17.5 August 20, 2012
0.17.4 August 06, 2012
0.17.3 July 16, 2012
0.17.2 June 24, 2012
0.16.1 June 23, 2012
0.17.1 June 02, 2012
0.17.0 April 28, 2012
0.16.0 March 26, 2012
0.15.2 February 25, 2012
0.14.2 January 31, 2012
0.15.1 January 26, 2012
0.15.0 December 05, 2011

Something wrong with this page? Make a suggestion

Login to resync this repository