On Thu, Mar 8, 2012 at 9:00 AM, Meikel Brandmeyer <m...@kotka.de> wrote: > However documenting everywhere that feeding garbage in might result in shit > coming out has this “things in the mirror might be closer than they appear” > taste. WTF? The mirror is not the problem. Nor is the car manufacturer to be > held responsible. If the driver of a car causes an accident, it's her fault. > *She* is responsible. No one else.
If the driver is unaware that what they see in the mirror is distorted, the driver will assume it is not. A driver who has been supplied incomplete information about the operation of their vehicle can not reasonably be held fully responsible, which is why we have so many warning labels. Documentation for programming languages should take the same approach. If any input other than what is specified will lead to undefined results, that needs to be documented. Otherwise, someone will feed in invalid input, get what looks like valid output, and assume that the documentation is out of date, incomplete, or something equally inane, and continue to misuse the feature. You can never underestimate the power of ignorance, no matter a person's creed, intelligence, lifestyle, or profession. If invalid input will not throw an error immediately, then it DOES need to be documented that invalid input will result in undefined output. ~Justin -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en