11 ms·
People get excited when they find out they can have types that are expressive, eliminate many useless bad programs almost for free, and be working in a language
by coolsunglasses 12y ago
People get excited when they find out they can have types that are expressive, eliminate many useless bad programs almost for free, and be working in a language more expressive than most.
- lelandbatey 12y agoI don't think "people get excited when they encounter convenient sets of features" is a reasonable excuse for misleading claims like "if it compiles it works." It is a reasonable explanation for why some people make these claims (over excitement), but they still shouldn't be misleading people like that.
- coolsunglasses 12y agoHere I point you to what tome & tel said. If it's so clearly nuts, why are you picking that interpretation? Do you read everyone's words in the least-charitable/sensible light possible?
- AnimalMuppet 12y agoI can't speak for lelandbatey. For myself, though, I picked that interpretation because that really seemed to be what they were trying to say. I'm not looking to take peoples' words in the least-charitable way possible, but I'm also not going to go out of my way to make excuses for them when they say something that is clearly wrong.
- coolsunglasses 12y agoI cannot say that getting upset over people using jokey memes to communicate ideas (Haskell is more likely to be correct after a successful type-check than other langs) is likely to do you much good. I like Epictetus for when I notice I am upset about something that isn't within my control: http://classics.mit.edu/Epictetus/epicench.html http://classics.mit.edu/Epictetus/epicench.html
- infraruby 12y ago> Haskell is more likely to be correct after a successful type-check than other langs Is there any empirical evidence for this?
- coolsunglasses 12y agoYou really don't want to lean on empiricism for PL, but: http://www.cs.yale.edu/publications/techreports/tr1049.pdf http://www.cs.yale.edu/publications/techreports/tr1049.pdf
- infraruby 12y ago> You really don't want to lean on empiricism for PL Why not? considering "more likely to be correct" is an empirical claim. > http://www.cs.yale.edu/publications/techreports/tr1049.pdf http://www.cs.yale.edu/publications/techreports/tr1049.pdf Haskell vs Ada, C++, etc. in 1994.
- coolsunglasses 12y agoBecause all comparative PL studies are nonsense, including that one. Look at the experiment methodology described in most of them. We have something better for evaluating PLs.
- infraruby 12y ago> We have something better for evaluating PLs. Do tell! How do you evaluate empirical claims (about programming languages) without empirical evidence?
- seanmcdirmid 12y agoEmpirical evaluations break down quickly as the complexity of what is being measured increases, so your best bet in doing a study is to focus on one or a few features. PLs are of course evaluated over time in the market place over time, like any other designed artifact.
- djur 12y agoThe context I've read that remark in before is discounting the need for automated testing. At least one example has been provided in this thread of a Haskell developer claiming to have released code after it was verified by the type checker but without actually testing it. I don't think it's reasonable to take the phrase at anything but face value, considering that it's used as a promotional slogan by Haskellers.
- fsloth 12y ago"misleading claims like "if it compiles it works."" ML family of languages contain powerful language features and libraries that, when programmed using particular style, can produce programs that actually do that (if they are brief). They are not magic, the point is just that the abstractions used there effectively remove large categories of typical bugs. Of course the language itself is not sufficient, one must study how programs are supposed to be written in the said languages to understand the utilization of those features. Yaron Minsky's "Ocaml for the masses" in http://queue.acm.org/detail.cfm?id=2038036 http://queue.acm.org/detail.cfm?id=2038036 explains this far more better than I could.