From: Erik Naggum
Subject: Re: array input/output to files
Date: 
Message-ID: <3143730628516198@naggum.no>
* ·····@sip.medizin.uni-ulm.de (kp gores)
| how can i fix this?

  since the standard reader macro for arrays only creates simple arrays,
  you would need to call ADJUST-ARRAY afterwards to set further options, or
  create a specialized reader macro or even use #. and write out a call to
  MAKE-ARRAY with the :INITIAL-CONTENTS keyword to include the contents.

#:Erik
-- 
  (defun pringles (chips)
    (loop (pop chips)))

From: Erik Naggum
Subject: Re: array input/output to files
Date: 
Message-ID: <3143785614504048@naggum.no>
* kp gores
| why has the new array no fill-pointer?

  ADJUST-ARRAY is specified to signal an error if one attempts to add a
  fill-pointer to an array that doesn't have one.  sorry.

| 2nd: how would one create a reader macro?

  see SET-MACRO-CHARACTER and SET-DISPATCH-MACRO-CHARACTER.

#:Erik
-- 
  (defun pringles (chips)
    (loop (pop chips)))
From: Erik Naggum
Subject: Re: array input/output to files
Date: 
Message-ID: <3143985112194633@naggum.no>
* ·····@sip.medizin.uni-ulm.de (kp gores)
| to change the reader i have to modify the meaning of "#", right?

  no.

| (defun |#(-reader| (stream subchar arg)
|   (declare (ignore subchar arg))
|   (make-array :adjustable T
|		:fill-pointer T
|		:initial-contents (read stream t nil t)))

  try READ-DELIMITED-LIST, instead of READ.

| second, the arguments to make-array are wrong.

  yes, you would need to read the list first, then use its length as the
  dimension.

| i believe this are ignorant questions, but having never ever thought
| about modifying the reader, i have to ask for more help.

  I think you should hold back on modifying the reader.  it's not a good
  _first_ thing to try.

#:Erik
-- 
  (defun pringles (chips)
    (loop (pop chips)))