From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Diogo F. S. Ramos" Newsgroups: gmane.lisp.guile.devel Subject: Re: GSoC 2011 Date: Mon, 04 Apr 2011 11:19:47 -0300 Message-ID: <87ipuujdz0.fsf@gmail.com> References: <87oc4vonk9.fsf@gmail.com> <87zkobuzti.fsf@gmail.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1301926818 14153 80.91.229.12 (4 Apr 2011 14:20:18 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Mon, 4 Apr 2011 14:20:18 +0000 (UTC) Cc: guile-devel@gnu.org To: Noah Lavine Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Mon Apr 04 16:20:13 2011 Return-path: Envelope-to: guile-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Q6kdY-0003LV-C8 for guile-devel@m.gmane.org; Mon, 04 Apr 2011 16:20:12 +0200 Original-Received: from localhost ([127.0.0.1]:39960 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Q6kdX-0006tt-26 for guile-devel@m.gmane.org; Mon, 04 Apr 2011 10:20:11 -0400 Original-Received: from [140.186.70.92] (port=55533 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Q6kdM-0006hk-UB for guile-devel@gnu.org; Mon, 04 Apr 2011 10:20:06 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Q6kdE-00087f-P1 for guile-devel@gnu.org; Mon, 04 Apr 2011 10:19:57 -0400 Original-Received: from mail-gx0-f169.google.com ([209.85.161.169]:33556) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q6kdE-00087J-MR for guile-devel@gnu.org; Mon, 04 Apr 2011 10:19:52 -0400 Original-Received: by gxk23 with SMTP id 23so663481gxk.0 for ; Mon, 04 Apr 2011 07:19:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version:content-type; bh=PHU55iS+0NtyB3yDg1kL0vuwIY5KqQcV2RTQrPagLrQ=; b=gE66p0GorMnjBjq+B0yKFNVCfSq5mARsVn8iZ7lj+R3KTdCq/NSQ2Lxb0QWW1i0zbE WCcqyrNnNzi1XKn7i9FZ1GUH23Fo35RFQNdDB6GWhxA5PxRsBmzLP40nUF2JOOzdpuWq 5x+Nr+NKI/QrQ0cCNQZDIqn8vZzT48a4FWKMM= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version:content-type; b=iE9plGIA6jDwdCvjMTweFmg7vn9zodH+m1NYRD57lCkm6l9l0bqmGd4krF5dwrKcth TDUANFlEWiHqgJwJq84IMoH8ZLMcNm/y8whXH1FUAA+EUiGLIYh5ry1B9rLJHLzvHu3i 5hYBR9iO8RpZDHCT2ruEoUVmniWbAwDj/Zr3Y= Original-Received: by 10.236.195.5 with SMTP id o5mr4102618yhn.96.1301926791631; Mon, 04 Apr 2011 07:19:51 -0700 (PDT) Original-Received: from cometa (189-68-71-26.dsl.telesp.net.br [189.68.71.26]) by mx.google.com with ESMTPS id h63sm2307859yhm.86.2011.04.04.07.19.49 (version=TLSv1/SSLv3 cipher=OTHER); Mon, 04 Apr 2011 07:19:50 -0700 (PDT) In-Reply-To: (Noah Lavine's message of "Sun, 3 Apr 2011 23:28:55 -0400") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.3 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-Received-From: 209.85.161.169 X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.devel:12152 Archived-At: Noah Lavine 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, right? 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. [0] http://www.johnstowers.co.nz/blog/index.php/2011/04/03/end-of-an-era-pygtk/ -- Diogo F. S. Ramos