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: need faster MOP....


>>>>> "julian" == julian gosnell <julian.gosnell@nomura.co.uk> writes:

    julian> I am writing an app that needs a decent object system. I
    julian> chose tiny-clos because. It's simple, powerful, standard
    julian> and I come from a CL, CLOS background.

    julian> However, timy-clos is really only a reference, not an
    julian> industrial strength system, and it's multi-methods really
    julian> are a bit slow.

"Very slow" would be more appropriate... 

    julian> I tried compiling the app using hobbit (a while ago) but
    julian> came up against a couple of problems which I never had
    julian> time to resolve properly, and gave up.

Have you tried the latest guile-stklos ? (guile-stklos-1.3.1 
at ftp.red-bean.com, in the contrib/misc directory).
It compiles tiny-clos and some STklos classes via hobbit (that is the
latest version guile-hobbit-1.3.2, also to be found at red-bean).

Several users had serious problems using hobbit and guile-stklos in
the past. One of the most common problem was the use of a guile
snapshot not compatible with hobbit or stklos.

Now you are FORCED to use guile-1.3, so you probably will encounter
less problems...

For speed, you are much faster than interpreted, but it is not
sufficient in my opinion. This is caused by 
the current guile-stklos not using a
compiled boot-9.scm, as was the case for previous versions.
Compiling boot-9.scm was a problem to most users, so I decided not to use
this, but at the expense of speed.

    julian> I looked at other object systems (like Meroon) but decided
    julian> I preferred tiny-clos.

    julian> I listened with interest to threads about a forthcoming
    julian> native Guile object system, and 'C' code that would
    julian> compute method combinations and cache them etc.

    julian> I try to spend what little time I have available on the
    julian> app itself, rather than it's infrastructure, which I hope
    julian> will catch me up. What I would like to know is :

    julian> o has anyone got a nice, compiled and preferably modular,
    julian> working tiny-clos ?(useful macros would be a bonus too) -
    julian> where might I find such a beast...?

In guile-stklos, tiny-clos is the module (clos-1.7 clos).
defmacros can be compiled by hobbit.

    julian> o how is the native object system coming on ? - is it a
    julian> drop in replacement for tiny-clos ? When will it be
    julian> available ? can I get a sneak preview etc... ?

In the future, I will certainly try to implement the basics of
tiny-clos with goos. This will speed up things enormously. 

--

B. Urban