Just Launched: You can now import projects and releases from Google Code onto SourceForge
We are excited to release new functionality to enable a 1-click import from Google Code onto the Allura platform on SourceForge. You can import tickets, wikis, source, releases, and more with a few simple steps. Read More
On Wed, Sep 10, 2003 at 10:54:43AM +0100, Christophe Rhodes wrote:
> > MAKE-STRING-INPUT-STREAM
> > * If the input stream is resized or otherwise mutated the effects are
> > seen in the stream as well.
> I'm not sure I like this one. Most of the rest makes sense to me, but
> this I think is a bit weird. I'm at least slightly supported by
> WITH-INPUT-FROM-STRING on this one, which refers to the "Traversal
> Rules and Side Effects" bit.
... and the issue MAPPING-DESTRUCTIVE-INTERACTION:EXPLICITLY-VAGUE
seems to support your position even more, yes.
> (with-array-data ((string string) (start start) (end end))
> string ; now the simple, underlying data, so mutations will be reflected
> end ; no need for functions, since we disallow changing the string structure
> so that the stream string is now simple [ though not necessarily
> (simple-array character (*)); it could be (simple-array nil (*)); I
> think that's probably acceptable performancewise ]
> Does that make sense?
It makes perfect sense in the light of the above issue. ;) To quote:
"The likelihood that a compiler could do some interesting
optimization if this point were not pinned down is high enough to be
the overriding consideration in this case."