[racket-dev] consistency in names and signatures
On 3/27/12, Matthias Felleisen <matthias at ccs.neu.edu> wrote:
> Q: Would it be worth our while to comb through the libraries and make the
> world consistent, even breaking backwards compatibility? I would be willing
> to run such a project.
I think it would be good. I think we should do it as a new #lang to
preserve backwards compatibility.
My preference is to almost always throw exceptions and almost never
return false unless the function name as some convention to it. (I use
a * to indicate a function that propagates #f, a lot.)
I see a solution to the string->url to be that the function should
just throw a contract violation exn internally without specifying the
contract outside. You could document it as having some
valid-url-string? that called string->url, but the actual contract
applied to string->url would just be string?
Jay
--
Jay McCarthy <jay at cs.byu.edu>
Assistant Professor / Brigham Young University
http://faculty.cs.byu.edu/~jay
"The glory of God is Intelligence" - D&C 93