[Top][All Lists]

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

Re: GSoC 2011

From: Diogo F. S. Ramos
Subject: Re: GSoC 2011
Date: Mon, 04 Apr 2011 11:19:47 -0300
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.3 (gnu/linux)

Noah Lavine <address@hidden> writes:

>> I've started trying to port librepository to guile from the ground up,
>> using just C. While doing so people at #introspection point me to the
>> great port of zeenix (guile-gir), as yourself.
> What does librepository do?

Sorry, the correct name is 'libgirepository'.

The library reads typelib files, which describes gobjects, and offers an
API to the user, so one doesn't need to create a parser.

There are two file formats to describe a gobject: GIR XML and
typelib. They are interchangeable, but the former is a text file and the
latter is in a binary format.

> When you talk about introspection, are you talking about introspecting
> on GObjects, or all Guile objects? (Guile has its own object system.
> If I understand correctly, all GObjects can be Guile objects, but not
> all Guile objects are GObjects.)

When I'm talking about Introspection, I'm talking about GObjects. As I
understand it, Guile objects already have introspection capabilities,

AFAIU, guile's GObjects are implemented using GOOPS, so you could
introspect them, but just as much information as the binding implementer
put there.

With Introspection, it is possible to explorer a new GObject feature
just after it is implemented by the original author, IIUC.

> According to some Gnome webpage Google found, GLib introspection is
> intended to make it easy to wrap GObject objects in higher-level
> languages. If I understand correctly, you wish to do this for Guile?
> That sounds like a good thing to do, if so.

It is the trend that I'm seeing at the GObject based world with the
Gnome 3.0 release.

Apparently it is possible to drop whole bindings with it [0], leaving
less code to maintain and debug.


Diogo F. S. Ramos

reply via email to

[Prev in Thread] Current Thread [Next in Thread]