[M3devel] AND (…, 16_ff)… Not serious - or so I hope!

Mika Nystrom mika at async.caltech.edu
Sun Jul 15 19:39:11 CEST 2012


I believe the compilers in existence are smart enough not to insert
the range check when the types are the same on both sides of the :=.
At least for copying... i.e.,

a, b : WIDECHAR; BEGIN a := b END

should not imply a range check.  With the types in question, that is
probably by far the most common operation, too.

     Mika

"Dirk Muysers" writes:
>My reasoning here was a pragmatic rather than a type-theoretical one.
>A rune defined as an integer can be freely passed around, while as
>a subrange it undergoes a hidden range check at every assignment.
>Now that range check wouldn't buy me anything, since the validation
>of a rune entails more than a simple range check and remains unavoidable
>in order to ensure the postcondition of pure Unicode in any text.



More information about the M3devel mailing list