>>>>> "Graham" == Graham Fawcett <[EMAIL PROTECTED]> writes:

    Graham> On Tue, Mar 18, 2008 at 12:22 PM, John Cowan <[EMAIL PROTECTED]> 
wrote:
    >> It wouldn't solve the data-punning problem.  As long
    >> as the same object can be seen one way by one module
    >> and another way by another, problems will continue to
    >> be endemic.  To fix that, we need two run-time types,
    >> which I hereby dub restricted and unrestricted
    >> strings.

    Graham> Just curious, whence the 'restricted'
    Graham> terminology? I would have thought 'utf8 and
    Graham> raw/byte strings' since that's the practical
    Graham> implication.

Gauche uses `complete' and `incomplete' strings.  Core
string operations work on both where that is meaningful, so
you can use STRING-APPEND on mixed complete and incomplete
strings, and the result becomes incomplete (it's sort of
like inexact contagion in that way).

Gauche was the first Scheme implementation with Unicode
support, so it bears looking at if you haven't already.

-- 
Alex


_______________________________________________
Chicken-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/chicken-users

Reply via email to