On Sun, Aug 9, 2009 at 11:52 AM, Sam Varner<snick-a-...@comcast.net> wrote:
>     1. Should I prefer 'import' if it's available?  E.g (import srfi-4)
>        instead of (use srfi-4).

It's actually (require-library srfi-4) (import srfi-4) == (use
srfi-4).  The code load and module import are separate steps.

E.g.

$ csi -no-init
#;1> (module foo () (import scheme) (import srfi-4) u8vector)
; loading /Users/jim/local/chicken-4/lib/chicken/4/scheme.import.so ...
; loading /Users/jim/local/chicken-4/lib/chicken/4/srfi-4.import.so ...
Error: unbound variable: u8vector

$ csi -no-init
#;1> (module foo () (import scheme) (require-library srfi-4) (import
srfi-4) u8vector)
; loading /Users/jim/local/chicken-4/lib/chicken/4/scheme.import.so ...
; loading /Users/jim/local/chicken-4/lib/chicken/4/srfi-4.import.so ...
; loading library srfi-4 ...
#<procedure (u8vector . xs966)>

If you do not need to use import specifiers such as 'rename' or
'only', you may condense the two steps into one using (use srfi-4) or
(require-extension srfi-4).  Otherwise, you must perform both steps.

Jim


_______________________________________________
Chicken-users mailing list
Chicken-users@nongnu.org
http://lists.nongnu.org/mailman/listinfo/chicken-users

Reply via email to