* Re: guile_gi-0.3.2 released [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 0 siblings, 2 replies; 6+ messages in thread From: Andy Tai @ 2021-12-30 5:40 UTC (permalink / raw) To: guile-user, Mike Gran Curious if this covers all the common GNOME APIs on GNOME 3? Also is there plan to cover gtk 4? Also to makg GObject appear as GOOPS objects? > Date: Wed, 29 Dec 2021 20:21:17 -0800 > From: Mike Gran <spk121@yahoo.com> > To: guile-user@gnu.org > Subject: guile_gi-0.3.2 released > Message-ID: <Yc0zvRh/ePBuloS9@spikycactus.com> > Content-Type: text/plain; charset=us-ascii > > On behalf of the Guile-GI team, I am pleased to announce the release > of Guile-GI v0.3.2. > > This library hopes to make GTK and WebKit available to Guile. > > guile-gi is a library that generates GNU Guile bindings for GObject > libraries that provide typelib files. ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: guile_gi-0.3.2 released 2021-12-30 5:40 ` guile_gi-0.3.2 released Andy Tai @ 2021-12-30 11:56 ` Chris Vine 2021-12-30 16:45 ` Mike Gran 1 sibling, 0 replies; 6+ messages in thread From: Chris Vine @ 2021-12-30 11:56 UTC (permalink / raw) To: guile-user On Wed, 29 Dec 2021 21:40:56 -0800 Andy Tai <atai@atai.org> wrote: > Curious if this covers all the common GNOME APIs on GNOME 3? > > Also is there plan to cover gtk 4? guile-gi should work with any library that has a gobject-introspection typelib installed, including gtk4 if you have that one installed. The examples directory in the git repository gives you examples of how to do it. ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: guile_gi-0.3.2 released 2021-12-30 5:40 ` guile_gi-0.3.2 released Andy Tai 2021-12-30 11:56 ` Chris Vine @ 2021-12-30 16:45 ` Mike Gran 1 sibling, 0 replies; 6+ messages in thread From: Mike Gran @ 2021-12-30 16:45 UTC (permalink / raw) To: Andy Tai; +Cc: guile-user On Wed, Dec 29, 2021 at 09:40:56PM -0800, Andy Tai wrote: > Curious if this covers all the common GNOME APIs on GNOME 3? > > Also is there plan to cover gtk 4? Also to makg GObject appear as > GOOPS objects? Like Chris noted, the bindings are generated at run-time by reading a typelib file that describes a C library. Many GNOME libraries provide typelib files. You might have some in a directory such as "/usr/lib/girepository-1.0" or somesuch. I have yet to try to use Gtk4 beyond making sure that its typelib can be parsed. There is some functionality that Gtk4 requires that guile-gi can't handle yet, such as vfuncs. The generated bindings do use GOOPS but GOOPS is bolted on top of GObject's own class hierarchy, so it is a bit of a hybrid. -Mike Gran ^ permalink raw reply [flat|nested] 6+ messages in thread
[parent not found: <Yc0zvRh/ePBuloS9.ref@spikycactus.com>]
* guile_gi-0.3.2 released [not found] <Yc0zvRh/ePBuloS9.ref@spikycactus.com> @ 2021-12-30 4:21 ` Mike Gran 2021-12-30 15:40 ` Matt Wette 0 siblings, 1 reply; 6+ messages in thread From: Mike Gran @ 2021-12-30 4:21 UTC (permalink / raw) To: guile-user On behalf of the Guile-GI team, I am pleased to announce the release of Guile-GI v0.3.2. This library hopes to make GTK and WebKit available to Guile. guile-gi is a library that generates GNU Guile bindings for GObject libraries that provide typelib files. GObject is a standard way of writing C-language libraries with headers and introspection information. Typelib files are GObject's standard way to provide that introspection information. Among the GObject libraries are GTK3 and WebKitGTK2, two popular GUI libraries. Guile-GI is of beta quality. Its API is stabilizing, but is not stable. This release, in particular, is just a snapshot where the code was as before we begin a long-overdue refactor of the type system. 2021-12-29: version 0.3.2 - SCM GObject arguments should better preserve their type when passing through function calls, and not downgrade to the argument's required type (#104) - Handle GVariant arguments - Handle GBoxed module variables - Initial handling of Gtk4's GtkExpression and other new, fundamental types - More verbose warnings - More stringent typechecks - Avoid crashes cause by calling callbacks in non-guile mode - Avoid Unicode combining character in test case Thanks to - LordYuuma - Bob131 - Danny Milosavljevic <daym> - Lloyd Konneker <bootchk> A tarball, sha256, and gpg sig can be downloaded from https://github.com/spk121/guile-gi/releases/download/v0.3.2/guile_gi-0.3.2.tar.gz SHA256 7e35b9b661e331a45bc44f4e4093b748693c603de94d728098a7a8e71f5c3505 https://github.com/spk121/guile-gi/releases/download/v0.3.2/guile_gi-0.3.2.tar.gz.sha256 https://github.com/spk121/guile-gi/releases/download/v0.3.2/guile_gi-0.3.2.tar.gz.sig If you prefer a Javascript-free download site, you can use https://lonelycactus.com/tarball/guile_gi-0.3.2.tar.gz https://lonelycactus.com/tarball/guile_gi-0.3.2.tar.gz.sha256 https://lonelycactus.com/tarball/guile_gi-0.3.2.tar.gz.sig There are some docs at https://spk121.github.io/guile-gi/ To get an idea of what this library is supposed to do. https://spk121.github.io/guile-gi/The-Concept-of-Operations.html The repository and bug tracker can be found at https://github.com/spk121/guile-gi If you're uncomfortable using the bug tracker or have any objection to the websites used, you can always e-mail me directly for help or bug reports. Regards, Mike Gran ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: guile_gi-0.3.2 released 2021-12-30 4:21 ` Mike Gran @ 2021-12-30 15:40 ` Matt Wette 2021-12-30 17:10 ` Mike Gran 0 siblings, 1 reply; 6+ messages in thread From: Matt Wette @ 2021-12-30 15:40 UTC (permalink / raw) To: guile-user 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. On 12/29/21 8:21 PM, Mike Gran wrote: > On behalf of the Guile-GI team, I am pleased to announce the release > of Guile-GI v0.3.2. > > This library hopes to make GTK and WebKit available to Guile. > > guile-gi is a library that generates GNU Guile bindings for GObject > libraries that provide typelib files. GObject is a standard way of > writing C-language libraries with headers and introspection > information. Typelib files are GObject's standard way to provide that > introspection information. Among the GObject libraries are GTK3 and > WebKitGTK2, two popular GUI libraries. > ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: guile_gi-0.3.2 released 2021-12-30 15:40 ` Matt Wette @ 2021-12-30 17:10 ` Mike Gran 0 siblings, 0 replies; 6+ messages in thread From: Mike Gran @ 2021-12-30 17:10 UTC (permalink / raw) To: Matt Wette; +Cc: guile-user 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 ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2021-12-30 17:10 UTC | newest] Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <mailman.29786.1640838091.18144.guile-user@gnu.org> 2021-12-30 5:40 ` guile_gi-0.3.2 released Andy Tai 2021-12-30 11:56 ` Chris Vine 2021-12-30 16:45 ` Mike Gran [not found] <Yc0zvRh/ePBuloS9.ref@spikycactus.com> 2021-12-30 4:21 ` Mike Gran 2021-12-30 15:40 ` Matt Wette 2021-12-30 17:10 ` Mike Gran
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).