3 ms·
Long compile times are bad user experience, and language design influences this. Performance is also extremely important for language ux, and there are certain
by yoklov 12y ago
Long compile times are bad user experience, and language design influences this.
Performance is also extremely important for language ux, and there are certainly constructs that will prevent your language from ever being efficient. Someone completely unfamiliar with compiler design could easily add these to the language on features that are simply not worth it, even in his or her own eyes.
Besides, have you ever looked back on something and said 'Gee, I wish I knew less about this when I started'
- robzyb 12y agoI understand your point. Perhaps I went a bit too gung-ho with my POV. I'd note, though, that long compile times shouldn't be too dependant on language design, should it? I feel that an argument could be made that if a programming language is well defined, then a well written compiler could be well thought out and designed around it. Of course, I'm sure that there are counterpoints. I'm sure that there are languages for which it is very difficult to write a "fast" compiled. > Besides, have you ever looked back on something and said 'Gee, I wish I knew less about this when I started' Actually, I kind of have. Experts (for lack of a better term) sometimes make their solutions more complicated than they need to be, and this is partly because they have the knowledge to do that.
- pjc50 12y agoC and C++'s system of macros by textual inclusion and approach to "compilation units" means that virtually all large C++ projects end up having multi-hour compile times.
- userbinator 12y agoExperts (for lack of a better term) sometimes make their solutions more complicated than they need to be, and this is partly because they have the knowledge to do that. I think that's caused by a slightly different effect - not considering essential and incidental complexity. It is true that for some programmers, the urge to put in as many things as they know tends to override the more basic goal of solving the problem in the most direct way.
- dmytrish 12y agoIt's not only compile time that matters: an overcomplicated language grammar/specification hinders development of language infrastructure (static analyses tools, linters, debuggers, parsers/code generators, IDE interaction, etc).