[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Axiom-developer] ANSI Lisp and Axiom (Boot)
From: |
Gabriel Dos Reis |
Subject: |
Re: [Axiom-developer] ANSI Lisp and Axiom (Boot) |
Date: |
05 Mar 2007 04:44:39 -0600 |
Kai Kaminski <address@hidden> writes:
| Gabriel Dos Reis <address@hidden> writes:
|
| > Kai Kaminski <address@hidden> writes:
| >
| > | Gaby wrote:
| > | > The ANSI specification for the IN-PACKAGE syntax dictates that
| > | > the argument must be a string, not a symbol. SBCL gives a fatal
| > | The hyperspec [1] says that the argument of IN-PACKAGE has to be a
| > | string *designator*, that is either a string or a character or a
| > | symbol. I've tested this with SBCL 1.0.2, CMUCL 19d and Allegro CL
| > | 8.0. They all accept any of #:foo, :foo, 'foo or "FOO" as argument to
| > | IN-PACKAGE.
| >
| > I'm using SBCL 1.0.2. Here is what I got when I sent the message:
| >
| > sbcl --noinform --noprint --eval '(compile-file "exports.lisp" :output-file
"exports.o")'
| > ; compiling file "/home/gdr/build/axiom/src/boot/exports.lisp" (written 04
MAR 2007 08:41:33 PM):
| > ; compiling (IN-PACKAGE (QUOTE BOOTTRAN))
| > ; file: /home/gdr/build/axiom/src/boot/exports.lisp
| > ; in: IN-PACKAGE 'BOOTTRAN
| > ; (IN-PACKAGE 'BOOTTRAN)
| > ;
| > ; caught ERROR:
| > ; (during macroexpansion of (IN-PACKAGE 'BOOTTRAN))
| > ; 'BOOTTRAN cannot be coerced to a string.
| >
| >
| > Which I interpret as an error on using a symbol in place of a string.
| > How should it be read?
| Good one. I'll look into this, but I can't find EXPORTS.LISP in my
| Axiom tree. I'll download your branch and look for it there.
It is extracted from src/boot/exports.lisp.pamphlet, with Tim listed
as \author. I don't think it is particular to my branch.
| > [...]
| >
| > | > error on that. Furthermore, the specification also says that the
| > | > packages LISP, USER and SYSTEM are no longer required for a
| > | > conforming implementation. Consequently, it is non-portable (and a
| > | > potential source of errors) to say something like
| > | >
| > | > (in-package 'BOOTTRAN :USE '(LISP USER SYSTEM))
| > | >
| > | > SBCL gives a fatal error.
| > | That should probably be
| > |
| > | (defpackage #:boottran
| > | (:use #:cl))
| > |
| > | in a file packages.lisp, and then
| >
| > Does the file *name* matter?
| No, not at all. But it is customary to put your package definition,
| i.e. the DEFPACKAGE forms, in a single file called either
| PACKAGES.LISP, PACKAGE.LISP or DEFPACKAGE.LISP.
src/boot/boothdr.lisp.pamphlet serves similar purpose.
-- Gaby
- [Axiom-developer] ANSI Lisp and Axiom (Boot), Gabriel Dos Reis, 2007/03/04
- [Axiom-developer] ANSI Lisp and Axiom (Boot), daly, 2007/03/05
- Re: [Axiom-developer] ANSI Lisp and Axiom (Boot), Gabriel Dos Reis, 2007/03/05
- Re: [Axiom-developer] ANSI Lisp and Axiom (Boot), Kai Kaminski, 2007/03/05
- Re: [Axiom-developer] ANSI Lisp and Axiom (Boot), Gabriel Dos Reis, 2007/03/05
- Re: [Axiom-developer] ANSI Lisp and Axiom (Boot), Humberto Ortiz-Zuazaga, 2007/03/05
- Re: [Axiom-developer] ANSI Lisp and Axiom (Boot), Gabriel Dos Reis, 2007/03/05