require-extension broken in 1.13.5 and CVS
"Alessandro Colomba" <[email protected]> Sun, 23 Apr 2006 22:52:00 +0000
| Newsgroups | gmane.comp.java.sisc.devel |
|---|---|
| Message-ID | <[email protected]> |
The new require-extension macro seems to be broken in CVS and, unfortunately, in SISC 1.13.5. --8<----8<----8<----8<----8<-- snoopy:~/tmp > mkdir test snoopy:~/tmp > cat >test/t.scm (module test/t (test) (define test 42)) snoopy:~/tmp > sisc SISC (1.14.0-alpha) #;> (library-exists? 'test/t) #t #;> (require-extension (test t)) Error: invalid syntax (require-extension (test t)) --------------------------- To enable more detailed stack tracing, start SISC with the -Dsisc.maxStackTraceDepth=16 java option. #;> (require-library 'test/t) (test/t) #;> (import test/t) #;> test 42 #;> (exit) --8<----8<----8<----8<----8<-- Part of it is due to a typo in the require-lib macro, but there are a few things I don't understand about the new code: 1. Why does the [(_ (lib id0 id ...) clause ...) pattern in the require-extension macro contain "clause" at all? The reference SRFI-55 macro uses quite a different pattern, and this "clause" doesn't seem to be used. 2. The new code seems to specify that the syntax should be: (require-extension (lib test/t)) Which a) is not backwards-compatible, b) is not documented in the manual, c) does not seem to work anyway. 3. Shouldn't require-extension allow a module to be have a name non-inclusive of its path, as per the current manual? Right now it does not. If these concerns are valid, I'll submit a bug in sourceforge. I have modified srfi-55.scm to address 1 and 2. I have also written a version that respects the old (require-extension (com/foo lib1 lib2)) syntax. ___ Alessandro ------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid0709&bid&3057&dat1642