[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Why does #s(foo :bar baz) cause error in ACL? Date: Mon, 16 Dec 91 14:47:31 JST From: sawada@etl.go.jp (Toshimi sawada) Reply-To: sawada@etl.go.jp



   Would someone give me an answer, please?

   Why, in Allegro CL, sharp sign macros for builtin atoms like
   structure, array, etc. cause error?

	   <etlclt:25> (defstruct foo bar)
	   FOO 	
	   <etlclt:26> (make-foo :bar 'baz)
	   #s(FOO :BAR BAZ) 
	   <etlclt:27> #s(FOO :BAR BAZ) 
	   Error: #s(FOO :BAR BAZ) -- invalid form for eval.
	   [1] <etlclt:28> :pop
	   <etlclt:29> (make-array 2)
	   #(NIL NIL) 
	   <etlclt:30> #(nil nil)
	   Error: #(NIL NIL) -- invalid form for eval.
	   [1] <etlclt:31>

   Thanks in advance.
   --
   T. Sawada         Electrotechnical Laboratory, Japan
   sawada@etl.go.jp  Computer Language Section.


It works for me:

<cl> (defstruct foo bar)

FOO 
<cl> (make-foo :bar 'baz)

#s(FOO :BAR BAZ) 
<cl> #s(FOO :BAR BAZ) 

#s(FOO :BAR BAZ) 
<cl> 
<cl> (make-array 2)

#(NIL NIL) 
<cl> #(nil nil)

#(NIL NIL) 
<cl> 
<cl> (LISP-IMPLEMENTATION-VERSION)

"4.0.1 [Sun4] (2/8/91)" 
<cl>
<cl> :pa
The COMMON-LISP-USER package is current.
<cl>