This is the mail archive of the guile@cygnus.com mailing list for the guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Motif port to guile



julian.gosnell@nomura.co.uk writes:

> I would like to do a port of Motif/Lesstif to guile, along the
> general lines of Stk, but I would like some general advice.
> 
> Motif is pretty object oriented, so I think I need an object
> system. What object system should I use?
> 
> How similar should I make it to the guile Stk port? Should I take
> that as an example of a good way to go, or does it have mistakes
> that I can now avoid?
> 
> Any other general advice/comments?

The STk object system is way cool (it's basically a simplified CLOS
with a MOP).  I was very impressed, for example, when I learned how
easy it is to create composite widgets using the STk object system.
There has already been some work in porting the STk object system to
guile, perhaps you could use the object system from there as a base.

As for the general question of which object system to use in guile,
generic function based systems don't interface trivially to C++ style
object systems, so some people prefer to stay away from CLOS type
stuff.  This is a question of taste.

Elk has a complete interface specification for programming Xlib, Xt
and I think Motif from scheme.  The interface is procedural, if I
remember correctly, and it does not provide object orientation, but I
would recommend checking out this system, and leveraging the interface
if you decide to provide a procedural interface.

Another very interesting system is winterp (based on xlisp), which is
a truly object oriented layer on top of Motif.  I don't know which
type of object system is used in winterp:

  http://www.cybertribe.com/mayer/winterp/


--
The train to Success makes many stops in the state of Failure.