4 ms·
This is just silly. No, a C++ compiler cannot be as easy to change as it is to use. Come on now.
by MaxBarraclough 7y ago
This is just silly. No, a C++ compiler cannot be as easy to change as it is to use. Come on now.
- amicin 7y agoSolution: make the C++ compiler harder to use!
- saagarjha 7y agoI wouldn't go as far as to say it's (or should be) "as easy to change", but making compilers that allow for modification is not novel or unusual: Clang lets you load optimizer plugins written in C++, for example; Rust lets you write macros in Rust itself that give you access to the token stream, and Lisps, of course, are homoiconic.
- rubiquity 7y agoI leave this for you without comment: http://nibblestew.blogspot.com/2020/04/your-statement-is-100-correct-but.html http://nibblestew.blogspot.com/2020/04/your-statement-is-100...
- saagarjha 7y agoFWIW, I consider posting a link that has a title matching the point you're trying to make, without further clarification or constructive feedback, fairly lazy.
- rubiquity 7y agoMy effort matches that of the person I was replying to. But yeah overall a bit out of character for me. Extremely polarizing examples to deter something could be progress is a pet peeve.
- saagarjha 7y agoWhen possible, I think it's nice to aim for something better than that. While brusque, I don't think I the comment was in bad faith, so I think it deserved better.
- xkapastel 7y agoOf course it can. You can do pretty much anything you like with software as long as you have the vision. A plugin/extension architecture can certainly make modifying a compiler easy. What makes you think it can't?
- MaxBarraclough 7y agoExcept it doesn't work like that. Sensible architecture doesn't make compiler engineering trivial. Compiler engineering is a highly technical area of software engineering. Think an average C++ programmer could take an old C++ compiler like OpenWatcom and make the necessary improvements to make it comply with the latest C++ language standard? Not a chance, that would be the work of a lifetime. They might have a shot at making small contributions to a compiler, but they'd have to set their sights quite low. Another example might be operating systems. The abstractions offered by modern operating systems are terribly easy to use, but there's a high skills barrier to doing meaningful work on the kernel. Similarly, the average web developer stands little chance of making a contribution to V8 or WebKit. This strikes me as analogous to discussing whether it should be harder to design and build a car, than to drive one. I don't like to be uncharitable but I stand by my earlier choice of words: this is silliness. Difficult engineering fields cannot be made easy. I see that another commenter, 'gm', has done a good job expressing similar points.
- wtetzner 7y agoFor compilers that are written in C++, changing the compiler is using it. ;)