Evaluating (describe #'make-array) results in:

#<Function MAKE-ARRAY {10050D61}> is function.
Arguments:
  (dimensions &key (element-type t) (initial-element nil initial-element-p)
   (initial-contents nil initial-contents-p) adjustable fill-pointer 
displaced-to
   displaced-index-offset)
Function documentation:
  Creates an array of the specified Dimensions.  See manual for details.
Its declared argument types are:
  ((OR (MOD 536870911) CONS NULL) &KEY
   (:ELEMENT-TYPE (OR CONS SYMBOL INSTANCE)) (:INITIAL-ELEMENT T)
   (:INITIAL-CONTENTS T) (:ADJUSTABLE T) (:FILL-POINTER T)
   (:DISPLACED-TO (OR ARRAY NULL)) (:DISPLACED-INDEX-OFFSET (MOD 536870911)))
Its result type is:
  ARRAY
On Wednesday, 7/28/04 05:43:19 pm [+1] it was compiled from:
target:code/array.lisp
  Created: Tuesday, 4/6/04 06:18:03 pm [+1]
  Comment: $Header: /project/cmucl/cvsroot/src/code/array.lisp,v 1.38 
2004/04/06 17:18:03 emarsden Exp $

Regarding the :initial-element keyword, in one place it says
(initial-element nil initial-element-p), meaning the default is nil;
in another we have (:INITIAL-ELEMENT T), meaning the default is t; but
evaluating, for instance, (make-array 10), the result is

#(0 0 0 0 0 0 0 0 0 0)

I suppose the standard leaves the default values up to the
implementation, I guess, but I can't undertstand this apparent
incoherence of distinct default values in several places in the same
implementation (CMU-CL 19a).

Cheers,

Rodrigo Ventura

-- 

*** Rodrigo Martins de Matos Ventura <[EMAIL PROTECTED]>
***  Web page: http://www.isr.ist.utl.pt/~yoda
***   Teaching Assistant and PhD Student at ISR:
***    Instituto de Sistemas e Robotica, Polo de Lisboa
***     Instituto Superior Tecnico, Lisboa, PORTUGAL
*** PGP fingerprint = 0119 AD13 9EEE 264A 3F10  31D3 89B3 C6C4 60C6 4585


Reply via email to