Guile Mailing List Archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: hobbit problems
>>>>> "Dirk" == Dirk Herrmann <dirk@ida.ing.tu-bs.de> writes:
Dirk> On Fri, 13 Nov 1998, Bernard URBAN wrote:
>> A good example of how to use modules is hobbit itself... Have
>> a look at how hobbit4d/libhob.scm is compiled as a module. The
>> safe way to use modules with hobbit is to mimic this process.
>>
>> This may solve the problem you have with cdr. If not, could
>> you post a short and COMPLETE exemple showing this problem ?
Dirk> I have a really minimal example:
Dirk> ----------------- test.scm: begin ---------------- (define
Dirk> my_car car) ------------------ test.scm: end
Dirk> -----------------
Dirk> I performed the following commands:
Dirk> hob -v -c test.scm # the log is given below guile
You should compile as a module: hob -v -c -m test.scm
For all NEW definitions (not redefinitions), things should be fine
without -m.
guile> (use-modules (hobbit4d link)) (hobbit-load-from-path
guile> "test") car
Dirk> ERROR: In expression car: ERROR: Unbound variable: car
Dirk> ABORT: (misc-error)
Dirk> Type "(backtrace)" to get more information.
guile> cdr
Dirk> #<primitive-procedure cdr>
guile>
Dirk> This example shows that the problem occurs if a function is
Dirk> given a new name. As you can see, no module stuff is used
Dirk> (at least not by me). Only those functions that are given a
Dirk> new name are influenced, since 'cdr' is still defined.
Dirk> I still can't tell the reason, since the generated C code
Dirk> (which I enclose at the bottom) makes sense to me (although
Dirk> I haven't looked very deeply into how interned symbols
Dirk> work).
The way intern and friends work is also largely mysterious to me.
Added to module, it is a real nightmare. For the sake of hobbit,
having intern well explained and a C interface to modules would help a
lot. If anyone is listening to that...
--
B. Urban
Guile Home |
Main Index |
Thread Index