A programming language for GNOME developers who want to build awesome GNOME apps
Vala is an open source, free and modern programming language and software project designed from the offset to bring new programming features to GNOME developers. It is a compiler for the GObject type system, allowing GNOME developers to create astonishing apps.
Features at a glance
Key features include interfaces, properties, signals, foreach, lambda expressions, type inference for local variables, generics, non-null types, assisted memory management, exception handling, as well as type modules a.k.a. plugins.
Effortlessly write complex object-oriented code
With the Vala compiler you, as a developer, will be able to effortlessly write complex object-oriented code while keeping the memory requirements low, and maintaining a standard C ABI and API.
Allows access to existing C libraries
The project has been designed in such a way that it allows access to existing C libraries, especially GObject-based libraries, without the need for runtime bindings.
It’s perfect for GTK+ and GNOME
Vala is a command-line compiler and programming languages. Developers who work with GTK+ and GNOME will be able to use Vala to write the code and compile it.
It’s influenced by C++, C, C#,Python, D and Java
The Vala programming language has been influenced by the well known and widely used C, C++, D, Python, C# and Java programming languages. It is a cross-platform software that can be easily ported on other operating systems.
It is supported by a wide range of IDE programs
Another interesting feature is the compatibility with various IDE (Integrated Development Environment) programs, including Anjuta, Valencia, Geany, Emacs, MonoDevelop, NetBeans, Val(a)IDE, Sublime Text, Vim, Vala Toys for Gedit, Euclide, RedCar, TextMate and Valama.
Availability and supported architectures
Vala is distributed only as a source archive. This means that the user must configure and compile the code prior to installation. Of course, it can also be easily installed on any GNU/Linux distribution from the default software repositories. Both 32-bit and 64-bit architectures are supported at this time.