[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Slib-discuss] Can't "require" some packages
From: |
Aubrey Jaffer |
Subject: |
Re: [Slib-discuss] Can't "require" some packages |
Date: |
Sun, 23 Dec 2007 22:48:33 -0500 (EST) |
| Date: Sun, 23 Dec 2007 15:32:43 -0000
| From: =?utf-8?Q?M=C3=A1rcio_Faustino?= <address@hidden>
|
| After reading the on-line documentation for SLIB v3a5, I tried the
| following (in Windows XP):
|
| ;; ====================
| (require 'structure)
| (define-structure point x y color)
| ;; Gives error "reference to undefined identifier: define-structure"
The SLIB code for the structure feature uses syntax-case macros, which
it turns out are supported by mzscheme. But after fixing this,
something is still wrong:
bash-3.1$ slib mzscheme
Welcome to MzScheme v370 [3m], Copyright (c) 2004-2007 PLT Scheme Inc.
> (require 'structure)
> (define-structure point x y color)
stdin::21: define-structure: bad syntax in: (define-structure point x y color)
It also fails in SCM. The source for structure.scm and the
syntax-case package haven't changed in a decade. structure.scm is the
only package using syntax-case. Macros not being a talent of mine, if
this is going to be fixed it will be by someone else.
| (require 'let-values) ;; or (require 'receive)
| ;; Gives error "reference to undefined identifier: macro:load"
|
| (define (main arguments) '())
| ;; ====================
|
| In MzScheme v371, using it like this:
| mzscheme -f "%SCHEME_LIBRARY_PATH%DrScheme.init" -C test.scm
With the development version of SLIB, change this to:
mzscheme -f "%SCHEME_LIBRARY_PATH%mzscheme.init" -C test.scm
| Then I noticed that in the DrScheme initialization file,
| "DrScheme.init", the expression "(define macro:load load)" was
| commented.
I fixed this and other problems with mzscheme.init (formerly
DrScheme.init). But something is still wrong. SRFI-11 is supported
by mzscheme-370 out of the box, but it fails to run one of the
examples given in SRFI-11:
bash-3.1$ mzscheme
Welcome to MzScheme v370 [3m], Copyright (c) 2004-2007 PLT Scheme Inc.
> (let ((a 'a) (b 'b) (x 'x) (y 'y))
(let-values (((a b) (values x y))
((x y) (values a b)))
(list a b x y)))
(x y a b)
> (let-values (((a b . c) (values 1 2 3 4))) (list a b c))
stdin::0: let-values: bad syntax at: (a b . c) in: (let-values (((a b . c)
(values 1 2 3 4))) (list a b c))
Do these examples work in v371? If not, this should be raised with
the PLT group.
| After uncommenting it, the error message for "(require 'let-values)"
| changed to:
|
| default-load-handler: cannot open input file:
| "C:\Program Files\slib\srfi-11" (The system cannot find the file
| specified.; errno=2)
I believe this error is fixed in the development version:
http://swiss.csail.mit.edu/ftpdir/users/jaffer/slib.zip
Also, the CVS repository is updated:
https://savannah.gnu.org/cvs/?group=slib