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

Issue: MAKE-STRING-FILL-POINTER (Version 1)



Issue:         MAKE-STRING-FILL-POINTER

References:    CLtL p.302

Related issues: none that I know of

Category:      ADDITION

Edit history:  Version 1, 20-Oct-88, by Moon, for discussion

Problem description:

  Once again I lost because I expected to be able to use MAKE-STRING
  to create a string with a fill-pointer, and I couldn't.  I had to use
  a more long-winded MAKE-ARRAY call instead.

Proposal (MAKE-STRING-FILL-POINTER:ALLOW):

  Give MAKE-STRING a :FILL-POINTER argument, with the same syntax and
  semantics as the :FILL-POINTER argument to MAKE-ARRAY.

Examples:

  (make-string 80 :fill-pointer 0)

Test Cases:

  See examples.

Rationale:

  I frequently expect it to be allowed and am surprised when it's not.

Current practice:

  I know of no implementations that support this.

Cost to Implementors:

  5 cents.

Cost to Users:

  none

Cost of non-adoption:

  none

Performance impact:

  none

Benefits:

  Increased language consistency.

Esthetics:

  Increased language consistency.

Discussion:

Other MAKE-ARRAY options that one might want to allow, but are
not already allowed or proposed, are :INITIAL-CONTENTS, :ADJUSTABLE,
:DISPLACED-TO, and :DISPLACED-INDEX-OFFSET.  A strong case could be
made for :ADJUSTABLE (I use an implementation where it doesn't matter,
so I don't care about that), I don't think anyone would care about the 
other three.