4 ms·
>Say you are learning Elm and do not know how to import modules yet. Maybe you just try the JavaScript way to see if it works. Or maybe you read the documentat
by andrepd 7y ago
>Say you are learning Elm and do not know how to import modules yet. Maybe you just try the JavaScript way to see if it works.
Or maybe you read the documentation section "Importing modules" which takes you 5 f*ggin minutes? That's a lot less to ask than "implement very verbose error messages that talk to you like you're a baby".
My opinion at least.
- hombre_fatal 7y agoWell, this kind of RTFM bravado mindset is one of the reasons every compiler has garbage errors and why manpages are more hassle than just googling "how to unzip with tar" and why so many projects can't even be fucked to flesh out a README. ("Just read the tests!") So, if that's what you want, you already have every other programming language to pick from. Let the rest of us have our fun. I've been programming for 20 years and appreciate Elm's errors every time. Why should I need to do any more work than read a compiler error when I accidentally write "import Webgl" instead of "import WebGL"?
- andrepd 7y agoI'm giving my opinion. Please understand some people think differently than you and that's fine. >why so many projects can't even be fucked to flesh out a README Not relevant. >manpages are more hassle than just googling "how to unzip with tar" Not relevant. >Why should I need to do any more work than read a compiler error when I accidentally write "import Webgl" instead of "import WebGL"? Still not relevant, since that wasn't the example given (correcting typos like this is indeed a very helpful compiler error; gcc does it for like a year or two now). >RTFM bravado mindset I really don't think telling people to learn a language instead of typing random things in hope that the compiler corrects them is being a hacker-neckbeard who tells you to rtfm. The example given in TFA is literally: "if you don't know how to import things yet, instead of reading the introduction, googling "elm import", or literally just taking 2 minutes to figure it out, just type what you would do in some other language, and the compiler will gently tell you how to import a module in Elm", or in other words "type random stuff until it works". Should the compiler also correct the user if they write `#import <set.h>`? Or `open Set`? Or `from Set import `? Again, in my opinion* this is neither relevant nor desirable.
- cuddlecake 7y ago> I'm giving my opinion. Please understand some people think differently than you and that's fine. What does that mean? Should he have NOT responded to your comment? Does that then mean that you should have not responded to his comment? Does that mean I should have not responded to your comment? Does that also mean that you shouldn't have made a comment, since Evan directly expressed his thoughts and opinions in his post? Should we stop communicating at all and become Loopless One-Directional Communication Graphs? Who shall be the original Opinion Holder? Adam or Eve? Anyway. > Should the compiler also correct the user if they write `#import <set.h>`? Or `open Set`? Or `from Set import `? Again, in my opinion* this is neither relevant nor desirable. If it can, why not? Why not tell the user: Hey, you've got `xyz`, but you can only do `zyx` with those literals. Having detailed Errors is not a detriment. I remember my first Segmentation Fault in C. Man, I cried. Programming languages have users, and caring about the User Experience of a language (i.e. Developer Experience, I supposed) is commonly desirable. There is no downside to a good error message, neither for something as trivial as imports, nor for common things like using the wrong key names in a Record. I make heavy use of types in TypeScript, but the error messages when something is out of order (ever so slightly) is just so brutal at times, with error messages being 20+ lines long, where only the last line might be relevant. I, for one, welcome our helpful error message overlords.
- andrepd 7y ago>What does that mean It was more in response to the downvotes, with are (supposedly) not a disagree button.
- wglb 7y agoDownvotes as disagreement is perfectly ok.
- DanRosenwasser 7y ago> I make heavy use of types in TypeScript, but the error messages when something is out of order (ever so slightly) is just so brutal at times, with error messages being 20+ lines long, where only the last line might be relevant. I, for one, welcome our helpful error message overlords. If you've got examples of cases where we can do better, feel free to file an issue! We want to do better.
- jerojasro 7y agoThanks for mentioning this and calling him out.