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: Jacal <-> Guile mystery resolved?


    To: Chris Wedgwood <chris@cyphercom.com>
    Subject: Jacal <-> Guile mystery resolved?
    Cc: mdj@nada.kth.se
    From: Mikael Djurfeldt <mdj@nada.kth.se>

[..]

    As you saw from Aubrey Jaffer's post, the cause of the problem is that
    Guile by default makes a distinction between upper- and lowercase
    letters in symbols, at the same time as Aubrey uses both `Horner' and
    `horner' to refer to the same symbol in his code.  (This is legal in
    Scheme.)

[..]

    jacal.scm (Will only work together with the snapshot produced this
    coming night, since I have removed the `array-map!' fix.)
    ----------------------------------------------------------------------
    (define-module (jacal)
      :use-module (ice-9 slib)
      :use-module (ice-9 debug))

    (read-enable 'case-insensitive)
    (slib:load "jacal/math.scm")

    (define-public math math)
    ----------------------------------------------------------------------


OK. Using 970925 the above chokes: (Note: my editor has wrapped some lines
and done a comment preserving thing on those).


caffeine:~$ guile
guile> (system "cat jacal.scm")
(define-module (jacal)
  :use-module (ice-9 slib)
  :use-module (ice-9 debug))

(read-enable 'case-insensitive)
(slib:load "jacal/math.scm")

(define-public math math)
0




guile> (use-modules (jacal))

;;; WARNING (*SLIB-VERSION* (2b3)  doesn't match  (define *slib-version*
;;; 2b3) in /usr/local/share/guile/site/slib/require.scm)

;;; WARNING (*SLIB-VERSION* (2b3)  doesn't match  (define *slib-version*
;;; 2b3) in /usr/local/share/guile/site/slib/require.scm)

ERROR: In procedure primitive-load-path in expression (primitive-load-path
       name):
ERROR: Unable to find file "jacal/math.scm.scm" in load path
ABORT: (misc-error)

Type "(backtrace)" to get more information.
guile> (backtrace)

Backtrace:
0* [primitive-load-path "jacal/math.scm.scm"]

Type "(debug-enable 'backtrace)" if you would like a backtrace 
automatically  if an error occurs in the future.

guile>



If I comment out the "(read-enable 'case-insensitive)" line, and apply
Jaffer's patches to jacal (1a7) then everything works fine.

(Well, actually somme of 2d output code in jacal breaks, but that may well
be a jacal bug).





-Chris