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

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



re:     [JonL] This proposal isn't merely an ADDITION -- it is an incompatible 
	CHANGE, since CLtL explicitly states that the output of MAKE-STRING is
	a simple string.
    [moon] It is not an incompatible change.  ... because no [currently?]
    portable program will use the newly added feature.  

Sorry, but it is an incompatiblity visible to any code-analysis system 
that does type-inferencing.  Those programs can "know" from CLtL that
MAKE-STRING returns a SIMPLE-STRING.

For example, Lucid's compiler contains detailed information about 
the specified argument types and function result types, and uses that
information to do some type-inferencing.  Furthermore, as Lucid 2.1 and
3.0 release documentation makes clear, AREF can only be open-coded on 
SIMPLE-ARRAYs; so the distinction _can_ be critically important.

Now, I don't claim that Lucid's type-inferencing is perfect in all 
circumstances; but it does matter to us when incompatible changes
are made to the type specifications of standard functions.


-- JonL --