Re: GSoC proposal: gtk+ bindings for prolog

2008-04-02 Thread Murray Cumming
On Wed, 2008-04-02 at 06:44 +0200, Jean-Yves Lefort wrote:
 The information is mostly complete. The generator can automatically
 handle methods which involve fundamental types (gboolean, gint, ...),
 GLib enum and flags types, and GObject-derived types. Such methods
 represent a vast majority of the GTK+ API.
 
 For other methods, it emits a warning, for instance ignoring method
 gtk_list_store_append(): unhandled parameter type GtkTreeIter*. I
 then manually add the needed information to a configuration file.
 
 By the way, in case some GTK+ developer is reading: it would have been
 nice if GLib/GTK+ had offered a way to obtain type and method
 information without having to hack up a .h parser, eg:
 
   GType *gtk_get_types (int *num_types);
 
   GMethodInfo *g_type_get_methods (GType type, int *num_methods);
 
 It seems like a natural continuation of the reflection facilities
 already present in GLib.

h2defs.py might be useful to you. It is used by pygtk and gtkmm:
http://svn.gnome.org/viewvc/pygtk/trunk/codegen/

There is work happening on fuller introspection for GObject.

There is also a language-bindings mailing list which might help with
general bindings issues.

-- 
[EMAIL PROTECTED]
www.murrayc.com
www.openismus.com

___
gtk-devel-list mailing list
gtk-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-devel-list


Re: GSoC proposal: gtk+ bindings for prolog

2008-04-02 Thread Mathias Hasselmann

Am Dienstag, den 01.04.2008, 12:56 +0200 schrieb Jean-Yves Lefort:
 On Mon, 31 Mar 2008 22:52:09 +0200
 Ben Torfs [EMAIL PROTECTED] wrote:
 
  As a fan of both the prolog programming language and the GTK+ toolkit
  (as a user), I was wondering why the GTK page makes no mention of any
  prolog bindings. For those of you that are unfamiliar: prolog is a
  declarative language (like haskell, but very different in the way it
  works). Until now, it has mostly been used as a research tool in
  artificial intelligence (theorem proving, knowledge representation,
  etc.) However, I believe it has a lot of potential to be used for
  desktop applications too. Haskell too, for example, has also proven to
  be a success for end-user applications (gtk+ bindings exist). I think
  prolog is just a breeze to program in, and I would love to push it
  further! Specifically, by implementing GTK+ bindings for this language
  myself, as a Google Summer of Code project. Implementing all functions
  would probably be too much work for a 3-month project, but it could
  certainly deliver a basic subset, as a basis for myself and other
  developers to continue working on later.
 
 It should take much less than 3 months. I've implemented exhaustive
 GTK+ bindings for a language I'm designing in a couple of days. The
 internal API representation suitable for use by a generator program
 can be automatically obtained:
 
   - for types and methods, by parsing the C headers

Please don't replicate efforts done by other binding authors, please.
Really.

Read the GTK+ Hackfest papers about GTK+ 3.0 and look for recent
information about GObject introspection support. Search for pybank,
which is a prototype[?] for a next-generation GObject binding and
understand how it works. Perl has a related project if you prefer that
language, but I don't know its name.

After getting a basic idea about recent binding efforts you might want
to join #introspection at irc.gimp.org.

Btw, why is the language-bindings list dead? Which mailing list is used
for discussing (and documenting) pybank and introspection efforts?

All this shiny infrastructure is not in place yet, but hopefully it will
be next spring. With that infrastructure creation of Prolog bindings
looks much more useful and educational that it is this year - in the
sense of we do, because we can do itin a reasonable way. IMHO.

Ciao,
Mathias
-- 
Mathias Hasselmann [EMAIL PROTECTED]
Openismus GmbH: http://www.openismus.com/
Personal Site: http://taschenorakel.de/


signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil
___
gtk-devel-list mailing list
gtk-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-devel-list


Re: GSoC proposal: gtk+ bindings for prolog

2008-04-02 Thread Jean-Yves Lefort
On Wed, 02 Apr 2008 09:52:18 +0200
Murray Cumming [EMAIL PROTECTED] wrote:

 On Wed, 2008-04-02 at 06:44 +0200, Jean-Yves Lefort wrote:
  The information is mostly complete. The generator can automatically
  handle methods which involve fundamental types (gboolean, gint, ...),
  GLib enum and flags types, and GObject-derived types. Such methods
  represent a vast majority of the GTK+ API.
  
  For other methods, it emits a warning, for instance ignoring method
  gtk_list_store_append(): unhandled parameter type GtkTreeIter*. I
  then manually add the needed information to a configuration file.
  
  By the way, in case some GTK+ developer is reading: it would have been
  nice if GLib/GTK+ had offered a way to obtain type and method
  information without having to hack up a .h parser, eg:
  
  GType *gtk_get_types (int *num_types);
  
  GMethodInfo *g_type_get_methods (GType type, int *num_methods);
  
  It seems like a natural continuation of the reflection facilities
  already present in GLib.
 
 h2defs.py might be useful to you. It is used by pygtk and gtkmm:
 http://svn.gnome.org/viewvc/pygtk/trunk/codegen/

There is also gapi2xml.pl in gtk-sharp, and probably a few others.

 There is work happening on fuller introspection for GObject.

Good news.

-- 
Jean-Yves Lefort [EMAIL PROTECTED]


pgp6FJuMqyZ37.pgp
Description: PGP signature
___
gtk-devel-list mailing list
gtk-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-devel-list


Re: GSoC proposal: gtk+ bindings for prolog

2008-04-02 Thread Jean-Yves Lefort
On Wed, 02 Apr 2008 09:54:54 +0200
Mathias Hasselmann [EMAIL PROTECTED] wrote:

 
 Am Mittwoch, den 02.04.2008, 06:44 +0200 schrieb Jean-Yves Lefort:
  On Tue, 01 Apr 2008 12:32:02 -0500
  Yevgen Muntyan [EMAIL PROTECTED] wrote:
  
   Jean-Yves Lefort wrote:
On Mon, 31 Mar 2008 22:52:09 +0200
Ben Torfs [EMAIL PROTECTED] wrote:
It should take much less than 3 months. I've implemented
  exhaustive
GTK+ bindings for a language I'm designing in a couple of days.
   
   Then your bindings most likely really really suck.
  
  Ignorance or provocation? Whichever.
 
 No, just the hint that it takes more than just a few days to design good
 bindings. Current bindings needed years to become sound.

No, it doesn't. I wrote mine in less than a week, and I can assure you
that they are perfectly sound.

-- 
Jean-Yves Lefort [EMAIL PROTECTED]


pgp1ozCwPv9DV.pgp
Description: PGP signature
___
gtk-devel-list mailing list
gtk-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-devel-list


Re: GSoC proposal: gtk+ bindings for prolog

2008-04-01 Thread Jean-Yves Lefort
On Mon, 31 Mar 2008 22:52:09 +0200
Ben Torfs [EMAIL PROTECTED] wrote:

 As a fan of both the prolog programming language and the GTK+ toolkit
 (as a user), I was wondering why the GTK page makes no mention of any
 prolog bindings. For those of you that are unfamiliar: prolog is a
 declarative language (like haskell, but very different in the way it
 works). Until now, it has mostly been used as a research tool in
 artificial intelligence (theorem proving, knowledge representation,
 etc.) However, I believe it has a lot of potential to be used for
 desktop applications too. Haskell too, for example, has also proven to
 be a success for end-user applications (gtk+ bindings exist). I think
 prolog is just a breeze to program in, and I would love to push it
 further! Specifically, by implementing GTK+ bindings for this language
 myself, as a Google Summer of Code project. Implementing all functions
 would probably be too much work for a 3-month project, but it could
 certainly deliver a basic subset, as a basis for myself and other
 developers to continue working on later.

It should take much less than 3 months. I've implemented exhaustive
GTK+ bindings for a language I'm designing in a couple of days. The
internal API representation suitable for use by a generator program
can be automatically obtained:

- for types and methods, by parsing the C headers
- for properties and signals, by using GLib introspection
  mechanisms such as g_object_class_list_properties()

Regarding the usefulness: I would say that for general-purpose
programming, Prolog is useless, and so would be your bindings.

-- 
Jean-Yves Lefort [EMAIL PROTECTED]


pgpg96i5ybty6.pgp
Description: PGP signature
___
gtk-devel-list mailing list
gtk-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-devel-list


Re: GSoC proposal: gtk+ bindings for prolog

2008-04-01 Thread Yevgen Muntyan
Hi Ben,

I am not CC'ing gtk-devel-list because 1) it's off-topic,
2) it won't do any good. gtk-devel-list is a list for
discussing development of Gtk itself, not anything
related to Gtk.

I doubt your idea is good for Gnome SoC because
of the following (I am a former SoC participant, so
I've been around this a little).
Gnome SoC ideas must be shiny. They need not be
useful but they must look and sound great, otherwise
you need a sponsor who is really interested in
the work to be done, in which case the idea need
not be shiny but it must be good and useful.
Prolog bindings don't seem to fall in either category,
IMO (namely, you won't find a sponsor, I am not
saying it's bad or useless).

But, that's my opinion, which doesn't matter. You
should contact the SoC people about it - they have
an IRC channel and a mailing list. Who knows,
my SoC work wasn't exactly shiny too :)

Best regards,
Yevgen

Ben Torfs wrote:
 Hello, developers!

 As a fan of both the prolog programming language and the GTK+ toolkit
 (as a user), I was wondering why the GTK page makes no mention of any
 prolog bindings. For those of you that are unfamiliar: prolog is a
 declarative language (like haskell, but very different in the way it
 works). Until now, it has mostly been used as a research tool in
 artificial intelligence (theorem proving, knowledge representation,
 etc.) However, I believe it has a lot of potential to be used for
 desktop applications too. Haskell too, for example, has also proven to
 be a success for end-user applications (gtk+ bindings exist). I think
 prolog is just a breeze to program in, and I would love to push it
 further! Specifically, by implementing GTK+ bindings for this language
 myself, as a Google Summer of Code project. Implementing all functions
 would probably be too much work for a 3-month project, but it could
 certainly deliver a basic subset, as a basis for myself and other
 developers to continue working on later.

 About myself: I'm a computer science student at the catholic university
 of leuven (Belgium). I should hopefully finish my studies in july 2009,
 and I'd love to have some practical experience before then. My study
 program heavily specialises in artificial intelligence techniques, so I
 come into contact with the prolog language quite a lot. I have loved the
 language since I learned it, but I think it's a real shame that it never
 got the attention on the desktop that for example haskell has gotten.
 Hence my proposal! I chose GTK+ for this project because that's the
 toolkit I use on my computer every day, and I won't have it any other
 way. Despite this, I'm unfamiliar with the internals of GTK+. This is of
 course a problem that can be easily overcome.

 I would love to send in this idea as a GSoC project, but not before
 contacting this mailing-list. Do any other people think this would be a
 good idea, and is anyone maybe willing to mentor this?

 Thanks for reading everyone,

 Ben Torfs


 ___
 gtk-devel-list mailing list
 gtk-devel-list@gnome.org
 http://mail.gnome.org/mailman/listinfo/gtk-devel-list
   

___
gtk-devel-list mailing list
gtk-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-devel-list


Re: GSoC proposal: gtk+ bindings for prolog

2008-04-01 Thread Yevgen Muntyan
Jean-Yves Lefort wrote:
 On Mon, 31 Mar 2008 22:52:09 +0200
 Ben Torfs [EMAIL PROTECTED] wrote:

   
 As a fan of both the prolog programming language and the GTK+ toolkit
 (as a user), I was wondering why the GTK page makes no mention of any
 prolog bindings. For those of you that are unfamiliar: prolog is a
 declarative language (like haskell, but very different in the way it
 works). Until now, it has mostly been used as a research tool in
 artificial intelligence (theorem proving, knowledge representation,
 etc.) However, I believe it has a lot of potential to be used for
 desktop applications too. Haskell too, for example, has also proven to
 be a success for end-user applications (gtk+ bindings exist). I think
 prolog is just a breeze to program in, and I would love to push it
 further! Specifically, by implementing GTK+ bindings for this language
 myself, as a Google Summer of Code project. Implementing all functions
 would probably be too much work for a 3-month project, but it could
 certainly deliver a basic subset, as a basis for myself and other
 developers to continue working on later.
 

 It should take much less than 3 months. I've implemented exhaustive
 GTK+ bindings for a language I'm designing in a couple of days.

Then your bindings most likely really really suck.

  The
 internal API representation suitable for use by a generator program
 can be automatically obtained:

   - for types and methods, by parsing the C headers
   

You'll get incomplete information which is far from enough.

   - for properties and signals, by using GLib introspection
 mechanisms such as g_object_class_list_properties()

 Regarding the usefulness: I would say that for general-purpose
 programming, Prolog is useless, and so would be your bindings.
   

I bet it would be no less useful than the language
you are designing.

Yevgen

___
gtk-devel-list mailing list
gtk-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-devel-list


Re: GSoC proposal: gtk+ bindings for prolog

2008-04-01 Thread Rob Taylor
Yevgen Muntyan wrote:
 On Apr 1, 2008, at 12:39 , Yevgen Muntyan wrote:
 Hi Ben,

 I am not CC'ing gtk-devel-list because 1) it's off-topic,
 2) it won't do any good. gtk-devel-list is a list for
 discussing development of Gtk itself, not anything
 related to Gtk.
 
 Sorry about this, hit the wrong button. Oh well.
 
 I doubt your idea is good for Gnome SoC because
 of the following (I am a former SoC participant, so
 I've been around this a little).
 Gnome SoC ideas must be shiny. They need not be
 useful but they must look and sound great,
 
 This probably sounds harsh, so I must note that
 the reason is Google, not Gnome people who like
 shiny stuff or something. Being shiny is one
 of the Google requirements for a SoC project.


This is by no means true. Google only decides what organisations take 
part in the project, decisions on individual projects are up to the 
mentors and organisation.

Ben, please see the GNOME GSoC student information [1] for how to sumbit 
a proposal. You have until the 7th to submit.


Thanks,
Rob

[1] http://live.gnome.org/SummerOfCode2008/Students
 Best regards,
 Yevgen
 
 ___
 gtk-devel-list mailing list
 gtk-devel-list@gnome.org
 http://mail.gnome.org/mailman/listinfo/gtk-devel-list

___
gtk-devel-list mailing list
gtk-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-devel-list


Re: GSoC proposal: gtk+ bindings for prolog

2008-04-01 Thread Jean-Yves Lefort
On Tue, 01 Apr 2008 12:32:02 -0500
Yevgen Muntyan [EMAIL PROTECTED] wrote:

 Jean-Yves Lefort wrote:
  On Mon, 31 Mar 2008 22:52:09 +0200
  Ben Torfs [EMAIL PROTECTED] wrote:
 

  As a fan of both the prolog programming language and the GTK+ toolkit
  (as a user), I was wondering why the GTK page makes no mention of any
  prolog bindings. For those of you that are unfamiliar: prolog is a
  declarative language (like haskell, but very different in the way it
  works). Until now, it has mostly been used as a research tool in
  artificial intelligence (theorem proving, knowledge representation,
  etc.) However, I believe it has a lot of potential to be used for
  desktop applications too. Haskell too, for example, has also proven to
  be a success for end-user applications (gtk+ bindings exist). I think
  prolog is just a breeze to program in, and I would love to push it
  further! Specifically, by implementing GTK+ bindings for this language
  myself, as a Google Summer of Code project. Implementing all functions
  would probably be too much work for a 3-month project, but it could
  certainly deliver a basic subset, as a basis for myself and other
  developers to continue working on later.
  
 
  It should take much less than 3 months. I've implemented exhaustive
  GTK+ bindings for a language I'm designing in a couple of days.
 
 Then your bindings most likely really really suck.

Ignorance or provocation? Whichever.

   The
  internal API representation suitable for use by a generator program
  can be automatically obtained:
 
  - for types and methods, by parsing the C headers

 
 You'll get incomplete information which is far from enough.

The information is mostly complete. The generator can automatically
handle methods which involve fundamental types (gboolean, gint, ...),
GLib enum and flags types, and GObject-derived types. Such methods
represent a vast majority of the GTK+ API.

For other methods, it emits a warning, for instance ignoring method
gtk_list_store_append(): unhandled parameter type GtkTreeIter*. I
then manually add the needed information to a configuration file.

By the way, in case some GTK+ developer is reading: it would have been
nice if GLib/GTK+ had offered a way to obtain type and method
information without having to hack up a .h parser, eg:

GType *gtk_get_types (int *num_types);

GMethodInfo *g_type_get_methods (GType type, int *num_methods);

It seems like a natural continuation of the reflection facilities
already present in GLib.

-- 
Jean-Yves Lefort [EMAIL PROTECTED]


pgpNsRM7K0z8O.pgp
Description: PGP signature
___
gtk-devel-list mailing list
gtk-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-devel-list


GSoC proposal: gtk+ bindings for prolog

2008-03-31 Thread Ben Torfs
Hello, developers!

As a fan of both the prolog programming language and the GTK+ toolkit
(as a user), I was wondering why the GTK page makes no mention of any
prolog bindings. For those of you that are unfamiliar: prolog is a
declarative language (like haskell, but very different in the way it
works). Until now, it has mostly been used as a research tool in
artificial intelligence (theorem proving, knowledge representation,
etc.) However, I believe it has a lot of potential to be used for
desktop applications too. Haskell too, for example, has also proven to
be a success for end-user applications (gtk+ bindings exist). I think
prolog is just a breeze to program in, and I would love to push it
further! Specifically, by implementing GTK+ bindings for this language
myself, as a Google Summer of Code project. Implementing all functions
would probably be too much work for a 3-month project, but it could
certainly deliver a basic subset, as a basis for myself and other
developers to continue working on later.

About myself: I'm a computer science student at the catholic university
of leuven (Belgium). I should hopefully finish my studies in july 2009,
and I'd love to have some practical experience before then. My study
program heavily specialises in artificial intelligence techniques, so I
come into contact with the prolog language quite a lot. I have loved the
language since I learned it, but I think it's a real shame that it never
got the attention on the desktop that for example haskell has gotten.
Hence my proposal! I chose GTK+ for this project because that's the
toolkit I use on my computer every day, and I won't have it any other
way. Despite this, I'm unfamiliar with the internals of GTK+. This is of
course a problem that can be easily overcome.

I would love to send in this idea as a GSoC project, but not before
contacting this mailing-list. Do any other people think this would be a
good idea, and is anyone maybe willing to mentor this?

Thanks for reading everyone,

Ben Torfs


___
gtk-devel-list mailing list
gtk-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-devel-list