mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-06-06 21:00:07 +02:00
Mention Vala
svn path=/trunk/; revision=7165
This commit is contained in:
parent
6b4da7c5e1
commit
491be3601d
@ -1,3 +1,10 @@
|
|||||||
|
2008-07-05 Matthias Clasen <mclasen@redhat.com>
|
||||||
|
|
||||||
|
Bug 521589 – [RFC] gobject documentation should mention Vala
|
||||||
|
|
||||||
|
* gobject/tut_tools.xml: Add a reference to Vala.
|
||||||
|
Patch by Marc-Andre Lureau.
|
||||||
|
|
||||||
2008-07-05 Matthias Clasen <mclasen@redhat.com>
|
2008-07-05 Matthias Clasen <mclasen@redhat.com>
|
||||||
|
|
||||||
* glib/glib-sections.txt: Move g_strcmp0 to a more appropriate
|
* glib/glib-sections.txt: Move g_strcmp0 to a more appropriate
|
||||||
|
@ -1,25 +1,51 @@
|
|||||||
<?xml version='1.0' encoding="ISO-8859-1"?>
|
<?xml version='1.0' encoding="ISO-8859-1"?>
|
||||||
<partintro>
|
<partintro>
|
||||||
<para>
|
<para>
|
||||||
Several useful developer tools have been build around GObject technology.
|
Several useful developer tools have been build around GObject
|
||||||
The next sections briefly introduce them and link to the respective project pages.
|
technology. The next sections briefly introduce them and link to
|
||||||
|
the respective project pages.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
For example, writing GObjects is often seen as a tedious task. It
|
||||||
|
requires a lot of typing and just doing a copy/paste requires a
|
||||||
|
great deal of care. A lot of projects and scripts have been
|
||||||
|
written to generate GObject skeleton form boilerplate code, or
|
||||||
|
even translating higher-level language into plain C.
|
||||||
</para>
|
</para>
|
||||||
</partintro>
|
</partintro>
|
||||||
|
|
||||||
|
<chapter id="tools-vala">
|
||||||
|
<title>Vala</title>
|
||||||
|
<para>
|
||||||
|
From the <ulink url="http://live.gnome.org/Vala">Vala
|
||||||
|
homepage</ulink> itself: <quote>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.</quote>
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The syntax of Vala is similar to C#. The available compiler
|
||||||
|
translates Vala into GObject C code. It can also compile
|
||||||
|
non-GObject C, using plain C API.
|
||||||
|
</para>
|
||||||
|
</chapter>
|
||||||
|
|
||||||
<chapter id="tools-gob">
|
<chapter id="tools-gob">
|
||||||
<title>GObject builder</title>
|
<title>GObject builder</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Writing GObjects can be a tedious task. It requires a lot of typing and just
|
In order to help a GObject class developper, one obvious idea is
|
||||||
doing a copy/paste requires a great deal of care.
|
to use some sort of templates for the skeletons. and then run
|
||||||
One obvious idea is to use some sort of templates for the class skeletons.
|
them through a special tool to generate the real C files. <ulink
|
||||||
and then run them through a special tool to generate the real C files.
|
url="http://www.5z.com/jirka/gob.html">GOB</ulink> (or GOB2) is
|
||||||
<ulink url="http://www.5z.com/jirka/gob.html">GOB/</ulink> (or GOB2) is such
|
such a tool. It is a preprocessor which can be used to build
|
||||||
a tool. It is a preprocessor which can be used to build GObjects
|
GObjects with inline C code so that there is no need to edit the
|
||||||
with inline C code so that there is no need to edit the generated C code.
|
generated C code. The syntax is inspired by Java and Yacc or
|
||||||
The syntax is inspired by Java and Yacc or Lex. The implementation is
|
Lex. The implementation is intentionally kept simple: the inline C
|
||||||
intentionally kept simple: the inline C code provided by the user
|
code provided by the user is not parsed.
|
||||||
is not parsed.
|
|
||||||
</para>
|
</para>
|
||||||
</chapter>
|
</chapter>
|
||||||
|
|
||||||
@ -34,7 +60,6 @@
|
|||||||
</para>
|
</para>
|
||||||
</chapter>
|
</chapter>
|
||||||
|
|
||||||
|
|
||||||
<chapter id="tools-refdb">
|
<chapter id="tools-refdb">
|
||||||
<title>Debugging reference count problems</title>
|
<title>Debugging reference count problems</title>
|
||||||
|
|
||||||
@ -43,7 +68,7 @@
|
|||||||
a few memory management problems but also introduces new sources of bugs.
|
a few memory management problems but also introduces new sources of bugs.
|
||||||
In large applications, finding the exact spot where the reference count
|
In large applications, finding the exact spot where the reference count
|
||||||
of an Object is not properly handled can be very difficult. Hopefully,
|
of an Object is not properly handled can be very difficult. Hopefully,
|
||||||
there exist a tool named <ulink url="http://refdbg.sf.net/">refdbg/</ulink>
|
there exist a tool named <ulink url="http://refdbg.sf.net/">refdbg</ulink>
|
||||||
which can be used to automate the task of tracking down the location
|
which can be used to automate the task of tracking down the location
|
||||||
of invalid code with regard to reference counting. This application
|
of invalid code with regard to reference counting. This application
|
||||||
intercepts the reference counting calls and tries to detect invalid behavior.
|
intercepts the reference counting calls and tries to detect invalid behavior.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user