unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
From: Mike Gran <spk121@yahoo.com>
To: Matt Wette <matt.wette@gmail.com>
Cc: guile-user@gnu.org
Subject: Re: guile_gi-0.3.2 released
Date: Thu, 30 Dec 2021 09:10:57 -0800	[thread overview]
Message-ID: <Yc3oIQAOl5DhNQe7@spikycactus.com> (raw)
In-Reply-To: <49c3f704-691f-bbfe-7a4c-d6082f0a514a@gmail.com>

On Thu, Dec 30, 2021 at 07:40:50AM -0800, Matt Wette wrote:
> Thanks for the effort, Mike et al.
> 
> I'll be digging in, curious to see how you worked the GObject system in.
> I've spent some time trying to understand how GObject is laid out, as
> the use of C macros makes it quite obtuse and I could not find a lot on
> it.� If you are interested in my perspective let me know.

Hi Matt,

It is mostly GOOPS classes holding pointers to GObjects, and then
relying on GOOPS to sort out getting the right method to the right
GObject.

The code is a tangle: especially all the FFI necessary to make it
work.

I wanted to get this release out there, even though it is rough, as
the state of the code before a refactoring begins. The type system
needs to be reconstructed. guile-gi expects that the GLib and GObject
to which it is linked compile time is compatible with the GObject and
GLib it finds at run-time, which may not be true.

Please feel free to send any advice.

There is a parallel effort -- g-golf -- which tries to provide
typelib-generated bindings in a more schemey, user-friendly way.  It
also tries to minimize the amount of C.  guile-gi has a lot of C, and
its goal (not that we've really discussed a vision) is to be a fairly
direct dump of GObject methods into GOOPS classes, for better or for
worse.

-Mike Gran



  reply	other threads:[~2021-12-30 17:10 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <Yc0zvRh/ePBuloS9.ref@spikycactus.com>
2021-12-30  4:21 ` guile_gi-0.3.2 released Mike Gran
2021-12-30 15:40   ` Matt Wette
2021-12-30 17:10     ` Mike Gran [this message]
     [not found] <mailman.29786.1640838091.18144.guile-user@gnu.org>
2021-12-30  5:40 ` Andy Tai
2021-12-30 11:56   ` Chris Vine
2021-12-30 16:45   ` Mike Gran

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/guile/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Yc3oIQAOl5DhNQe7@spikycactus.com \
    --to=spk121@yahoo.com \
    --cc=guile-user@gnu.org \
    --cc=matt.wette@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).