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

Re: the discussion so far



bear scripsit:

> Are you really going to be okay with banning scheme from
> tiny environments?  One of the language's strengths has
> always been that it is a lisp small and simple enough to
> embed in a larger application or to run on small hardware.
> Unicode and its gargantuan tables will change all that.

A plausible approach would be to allow implementations to define
a set of integers such that:

	integer->char signals an error if its argument is not
	a member of the set, and

	character and string datums cannot contain numeric references
	using integers not in the set.

This guarantees, for example, that #\xA0, "\xA0", and (integer->char #xA0)
all mean either NON-BREAKING SPACE or are erroneous.  This is a much stronger
guarantee than we have at present, where (integer->char 64) could mean #\@ or
anything else.

(I'm not necessarily proposing this, just saying that I think it meets
your concerns.)

-- 
John Cowan  jcowan@xxxxxxxxxxxxxxxxx  www.ccil.org/~cowan  www.reutershealth.com
And now here I was, in a country where a right to say how the country should
be governed was restricted to six persons in each thousand of its population.
For the nine hundred and ninety-four to express dissatisfaction with the
regnant system and propose to change it, would have made the whole six
shudder as one man, it would have been so disloyal, so dishonorable, such
putrid black treason.  --Mark Twain's Connecticut Yankee