From: "Aaron W. Hsu" <[email protected]> Subject: Re: [r6rs-discuss] Case sensitivity Date: Sun, 22 Feb 2009 21:55:28 -0500 (EST)
> compatibility. I hold backwards compatibility pretty strongly, and while > I am not opposed to breaking it for good reason, I am not sure there is > really a good reason here. I think I've said enough (maybe too much) on case-sensitivity for now so I shut up about it, but backward-compatibility issue raised by Aaron is a good point. As an implementor I care about backward-compatibility a lot. But for the language spec I value consistency and simplicity more. I've seen too many systems suffering historical crufts they can't get rid of because of backward compatibility. I agree that you need a good reason (and I second for Ray Dillinger on giving rationale in the document), but another important factor is whether a reasonable upgrade path is provided or not. If there's an easier way for legacy code and new code can coexist, barrier of breaking backward compatibiliy gets lower. For that regard, default case sensitivity is actually almost free from the barrier. Although R6RS didn't make #!case-fold directive in spec, it is very easy for implementations to support it. Yes, you have to add one line to the source, but you have to add a bunch of lines to the legacy scheme code to wrap it into R6RS library syntax anyways. Some spec in R6RS are incompatible with existing SRFIs in a way that single implementation mode cannot support both. E.g., 'condition' procedure conflicts with SRFI-35 'condition' syntax, and 'error' procedure conflicts with SRFI-23. Although R6RS does allow different versions of 'condition' or 'error' can coexist by tweaking imports, being these constructs so fundamental, I'd say it is far more confusing to read and modify the code using these identifiers than case sensitivity. (I don't quite remember how this issue was discussed in R6RS process, but for R7RS I try to look at incompatibilities more cafefully). --shiro _______________________________________________ r6rs-discuss mailing list [email protected] http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss
