5 ms·
C++ was promoted by the Illuminati under the advice of a secret group of aliens to slow down the development of human progress. It achieves this via insanely lo
by vfclists 12y ago
C++ was promoted by the Illuminati under the advice of a secret group of aliens to slow down the development of human progress. It achieves this via insanely long compile times whose purpose is stop anyone from getting shit done in good time.
I mean, how do you iterate and refine if it takes ages to compile stuff? The flow of your of thoughts has probably gone to shit before the compile is over.
Apparently the guys at CERN love it so much they created an interpreter http://root.cern.ch/drupal/content/cint http://root.cern.ch/drupal/content/cint for it. No wonder the Higgs boson hasn't been discovered yet (or has it?)
- potbelly83 12y agoyep it has, though as a guy who earns his living doing C++ I whole heartedly agree with your viewpoint
- vfclists 12y agoIf one day we all get sucked into some black hole and pop out on the far side of the universe, we will know that it was due to some null pointer exception in some C++ code at CERN.
- spiralganglion 12y agoI wish I could tweet that.
- stox 12y agoC++ was originally developed to make it easier for a mathematician to do complex numeric variables in C. It has been downhill ever since.
- gaius 12y agoOne of the USPs of FORTRAN for a long time was the easy, native handling of complex numbers. Faced with that problem, I would have shrugged and said, use FORTRAN for that bit and bind it to C, easy.
- logicchains 12y agoI thought it was created to increase job security? http://harmful.cat-v.org/software/c++/I_did_it_for_you_all http://harmful.cat-v.org/software/c++/I_did_it_for_you_all
- tormeh 12y agoThat's brilliant.
- Create 12y agofirst the practicalities: CINT cannot and is unlikely to ever properly interpret ANSI/ISO C++. In my experience, many people who use ROOT at least have vague feelings that it is making their life more difficult then it rightly should. Nearly everyone I know that writes code that other people use feel even more strongly that ROOT's poor design leads to productivity losses. http://www.insectnation.org/howto/problems-with-root http://www.insectnation.org/howto/problems-with-root http://linuxfr.org/nodes/18919/comments/632920 http://linuxfr.org/nodes/18919/comments/632920 https://linuxfr.org/nodes/19928/comments/698692 https://linuxfr.org/nodes/19928/comments/698692
- igouy 12y agoIsn't CINT being replaced by Cling? http://root.cern.ch/drupal/content/cling http://root.cern.ch/drupal/content/cling
- Create 12y agoROOT can't be said to be OO because it breaks the encapsulation in the guts. There is a massive usage of "g" global pointers : gROOT, gDirectory, gTree, gEnv, gSystem, gPad, etc... Around one hundred in v5-18-00, a disaster. And this definitely breaks the fundamental OO principle of encapsulation. Then since ROOT violates three basic principles of OO (encapsulation, inheritance, virtuality) we are compelled to conclude that ROOT can't be considered as an OO software. ROOT is a bright example of people having jump to C++ but missed totally the point of OO. At least it will probably stay in the history of software because of that. What could be the improvements in a ROOT major revision ? o at least fix the name ! Is it ROOT, Root, root ? (Hell, we are pretty sure that any Bazaar model software have at least converged on that !) o have then a correct namespacing of classes and libs. o restore encapsulation (then get rid of the g pointers). o revisit the inheritances. At least have a good histogram class. And arrange the storage area to be stable (then "fix" the TTree). And please, have an introspection class that looks like an introspection class. o use pure abstract interfaces to separate domains. And stick strongly to the idea to have them pure. o etc, etc, etc, etc, etc, etc, etc, etc, etc, etc,... http://openscientist.lal.in2p3.fr/osc_web_16.11/html/faq.html#faq_ROOT http://openscientist.lal.in2p3.fr/osc_web_16.11/html/faq.htm...