On Wed, 12 Jan 2005, Yukihiro Matsumoto wrote:

> Besides, characters in _my_ encoding would not fit in the range of
> 0..255 anyway.

You know, there's absolutely nothing preventing you from improving upon
the idea that you are rejecting.

You know better than I how many immediate values (aka unboxed objects) are
still not used. Out of 0x100000000 possible values, there are:

0x00000004 values for nil, false, true, Qundef
0x3ffffffe possible pointers
0x80000000 possible Fixnums
0x3ffffffe possible symbols

and although this covers the whole range of possible VALUEs, the latter
category is too big given what's practical, and actually, so is the
pointer category, but the symbol category is more optimisable, given it's
always filled from the start, whereas you don't have control about how the
OS/CPU/malloc decide pointers.

So, given the current rule that symbols end with the bits "sss10", where
s is special for @,@@,etc, you could add the rule that they also begin 
with bits "00000000" (if that's not already a rule), then you would still
be able to have half-a-million symbol, and if, for some reason, anyone
thinks it's not enough, a "0000" prefix is already satisfying. So let's
say the prefix is "0000"...

... then I don't think you'd have a use for more than 1065353214
immediate values for the Character class...

_____________________________________________________________________
Mathieu Bouchard -=- Montr?al QC Canada -=- http://artengine.ca/matju