[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Axiom-developer] Boot/SPAD package syntax
From: |
Gabriel Dos Reis |
Subject: |
Re: [Axiom-developer] Boot/SPAD package syntax |
Date: |
05 Jun 2007 00:32:41 -0500 |
Stephen Wilson <address@hidden> writes:
| Greetings,
|
| I stumbled upon a curious facility of Boot and SPAD this evening. I
| do not recall, nor can I find, a reference to this in the list
| archives or in any documentation. Please correct me if I am wrong.
Since we have at least two versions of Boot around, you need to qualify
your Boot by either "old" or "new" or variations thereof.
| The facility is w.r.t identifiers. An identifier such as FOO'BAR is
| interpreted as meaning the symbol BAR in the package FOO. Other
| identifiers, such as 'FOO or FOO' do not communicate such a meaning.
That is old old syntax. Newer syntax in old Boot is FOO::BAR -- but it
may require parenthesis in most cases because of the precedence of
:: qhich does not make FOO::BAR a primary.
New Boot (in src/boot) has gotten same syntax (::) recently (added by me).
[...]
| My opinion is that this is unused cruft which has no discernible
| application. In fact, it theoretically results in the generation of
| non-portable code. For example, several popular Lisp implementations
| have introduced the notion of `package locks' to prevent against
| unintended alteration of package symbols. The identifier CL'FOO
| results in FOO being interned in the COMMON-LISP package, which would
| violate such a lock. There are other examples.
Those are *bugs in Axiom* source code -- there are plenty of those
around. Even if you remove the syntax CL'FOO, you'll find that
existing Axiom codes uses other things like restart, etc.
| I am curious if anyone has noticed this facility and/or sees a potential
| use for it.
I use the syntax FOO::BAR, but not FOO'BAR, for "package-call".
New Boot treats FOO'BAR as a "single" identifier.
--- Gaby
- [Axiom-developer] Boot/SPAD package syntax, Stephen Wilson, 2007/06/05
- Re: [Axiom-developer] Boot/SPAD package syntax,
Gabriel Dos Reis <=
- Re: [Axiom-developer] Boot/SPAD package syntax, Stephen Wilson, 2007/06/05
- Re: [Axiom-developer] Boot/SPAD package syntax, Ralf Hemmecke, 2007/06/05
- Re: [Axiom-developer] Boot/SPAD package syntax, Stephen Wilson, 2007/06/05
- Re: [Axiom-developer] Boot/SPAD package syntax, Gabriel Dos Reis, 2007/06/05
- Re: [Axiom-developer] Boot/SPAD package syntax, Stephen Wilson, 2007/06/05
- Re: [Axiom-developer] Boot/SPAD package syntax, Gabriel Dos Reis, 2007/06/05
- Re: [Axiom-developer] Boot/SPAD package syntax, Gabriel Dos Reis, 2007/06/05
- Re: [Axiom-developer] Boot/SPAD package syntax, Stephen Wilson, 2007/06/05
- Re: [Axiom-developer] Boot/SPAD package syntax, Gabriel Dos Reis, 2007/06/05
- Re: [Axiom-developer] Boot/SPAD package syntax, Stephen Wilson, 2007/06/05