On Sun, Nov 11, 2012 at 3:08 AM, Alan Watson <[email protected]> wrote:
> It's difficult to understand this prohibition. C strings containing > non-terminal NUL characters are not prohibited: > > char s[] = "abc\0efg"; > > Sure, most C library functions will interpret this string as equivalent to > the C string "abc" and most C-to-Scheme FFIs would convert this to the > Scheme string "abc", but such ambiguities are not per se issues for Scheme > code. > I think the existence of #\null at all is a wart, and a throw-back to languages like C which require it. In fact, the existence of all ASCII control characters is a wart, a throw-back to languages with no separation between binary and text. I'd really like a language where strings really are just text, and characters represent letters and punctuation from written scripts. In practice ASCII is convenient, and almost all implementations will support it (including #\null), but to forbid any attempts at something cleaner is sad. -- Alex
_______________________________________________ Scheme-reports mailing list [email protected] http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports
