Lisp HUG Maillist Archive

Question about quoted forms

In some test code I have for the SHOP3 system, I have some test data written as follows:

'shop-user::(shop::fluent-value foo)

This is working fine for me on Allegro, Clozure CL, and SBCL. However, on Lispworks I get this error:

CL-USER 4 : 1 > 'shop-user::(shop::fluent-value foo)

Error: #\( is an illegal character after a colon.
  1 (continue) Assume it denotes the symbol ||.
  2 (abort) return to debug level 1.
  3 Assume it denotes the symbol ||.
  4 Return to level 0.
  5 Restart top-level loop.

Is this just a non-standard syntax extension that all of these other implementations happen to support? Or is this a problem with Lispworks? I have tried looking around in the spec, but I can't seem to find where package qualifiers are discussed. Certainly the definition of "package prefix" only mentions package prefix before a symbol, not in front of arbitrary s-expressions:

package prefix n. a notation preceding the name of a symbol in text that is processed by the Lisp reader, which uses a package name followed by one or more package markers, and which indicates that the symbol is looked up in the indicated package.

Thanks!

Re: Question about quoted forms

This is a non-standard extension.

See CLHS 2.3.5: http://www.lispworks.com/documentation/HyperSpec/Body/02_ce.htm

~phoe

On 16.04.2020 22:35, Robert Goldman wrote:

In some test code I have for the SHOP3 system, I have some test data written as follows:

'shop-user::(shop::fluent-value foo)

This is working fine for me on Allegro, Clozure CL, and SBCL. However, on Lispworks I get this error:

CL-USER 4 : 1 > 'shop-user::(shop::fluent-value foo)

Error: #\( is an illegal character after a colon.
  1 (continue) Assume it denotes the symbol ||.
  2 (abort) return to debug level 1.
  3 Assume it denotes the symbol ||.
  4 Return to level 0.
  5 Restart top-level loop.

Is this just a non-standard syntax extension that all of these other implementations happen to support? Or is this a problem with Lispworks? I have tried looking around in the spec, but I can't seem to find where package qualifiers are discussed. Certainly the definition of "package prefix" only mentions package prefix before a symbol, not in front of arbitrary s-expressions:

package prefix n. a notation preceding the name of a symbol in text that is processed by the Lisp reader, which uses a package name followed by one or more package markers, and which indicates that the symbol is looked up in the indicated package.

Thanks!

Updated at: 2020-12-10 08:28 UTC