Commit 68986811 authored by Jürg Billeter's avatar Jürg Billeter Committed by Jürg Billeter

update for 0.0.1 release add introduction replace by LGPL add

2006-07-15  Jürg Billeter  <j@bitron.ch>

	* NEWS: update for 0.0.1 release
	* README: add introduction
	* COPYING: replace by LGPL
	* compiler/valacompiler.vala: add /usr/local/share/vala/vapi ad default
	  vapi search dir
	* vapi/glib-2.0.vala: File and HashTable enhancements

svn path=/trunk/; revision=79
parent d9a96b3b
This diff is collapsed.
2006-07-15 Jürg Billeter <j@bitron.ch>
* NEWS: update for 0.0.1 release
* README: add introduction
* COPYING: replace by LGPL
* compiler/valacompiler.vala: add /usr/local/share/vala/vapi ad default
vapi search dir
* vapi/glib-2.0.vala: File and HashTable enhancements
2006-07-14 Raffaele Sandrini <rasa@gmx.ch>
* vala/valacodegenerator.vala, vala/valasymbolresolver.vala,
......
Vala 0.0.1
==========
* Initial release.
Vala is a new 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. It's also planned to generate GIDL files when gobject-
introspection is ready.
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 [PLANNED]
* Non-null types [PARTIAL]
* Assisted memory management
Vala is designed to allow access to existing C libraries, especially
GObject-based libraries, without the need for runtime bindings. Each to
be used library requires a Vala API file at compile-time, containing the
class and method declarations in Vala syntax. Vala currently comes with
incomplete 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://www.paldo.org/vala/
......@@ -65,7 +65,12 @@ class Vala.Compiler {
}
}
var filename = Path.build_filename ("/usr/share/vala/vapi", basename, null);
var filename = Path.build_filename ("/usr/local/share/vala/vapi", basename, null);
if (File.test (filename, FileTest.EXISTS)) {
return filename;
}
filename = Path.build_filename ("/usr/share/vala/vapi", basename, null);
if (File.test (filename, FileTest.EXISTS)) {
return filename;
}
......
......@@ -326,6 +326,9 @@ namespace GLib {
public static int rename (string oldfilename, string newfilename);
[CCode (cname = "g_unlink")]
public static int unlink (string filename);
[CCode (cname = "symlink")]
public static int symlink (string! oldpath, string! newpath);
}
[ReferenceType (free_function = "g_dir_close")]
......@@ -455,7 +458,9 @@ namespace GLib {
public static ref HashTable new (HashFunc hash_func, EqualFunc key_equal_func);
public static ref HashTable new_full (HashFunc hash_func, EqualFunc key_equal_func, DestroyNotify key_destroy_func, DestroyNotify value_destroy_func);
public void insert (ref K key, ref V value);
public void replace (ref K key, ref V value);
public V lookup (K key);
public bool remove (K key);
}
public struct HashFunc {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment