3 ms·
>The library itself supports many common tasks which don’t have mature alternatives. I'd be interested to hear what tasks don't have good alternatives. ROOT c
by MereInterest 9y ago
>The library itself supports many common tasks which don’t have mature alternatives.
I'd be interested to hear what tasks don't have good alternatives. ROOT can plot histograms, but matplotlib does it much better. ROOT files are a halfway decent file format, but HDF5 is much better. ROOT has a cross-platform socket library, but boost::asio is much better.
The main reason I see for ROOT's continued usage is to compensate for the difficulty in adding new dependencies to a C++ project. With ROOT already being used in physics experiments, starting to use another of its submodules is simpler to do than pulling in a better-designed library.
- random_nick_xyz 9y agoWhy ROOT file format is not just a halfway decent file format and why HDF5 is not much better: https://indico.cern.ch/event/567550/contributions/2628878/attachments/1511966/2358123/hep-file-formats.pdf https://indico.cern.ch/event/567550/contributions/2628878/at...
- tempay 9y agoMy biggest problem with ROOT files is the dependency on ROOT, which is tricky to distribute. Though projects like uproot[1] look promising and I think ROOT 7 might improve things. [1] https://github.com/scikit-hep/uproot https://github.com/scikit-hep/uproot
- random_nick_xyz 9y agoAFAIK the ROOT file format was designed to be completely self descriptive. It can be read without ROOT. For instance: https://ep-dep-sft.web.cern.ch/contributed-event/149099 https://ep-dep-sft.web.cern.ch/contributed-event/149099
- tempay 9y ago> ROOT can plot histograms, but matplotlib does it much better. As much as I prefer matplotlib, quickly combining histograms with uncertainties and no regard for formatting is quicker with ROOT. 2D/3D/Profile histograms are also easier to quickly make. > ROOT files are a halfway decent file format, but HDF5 is much better. I believe the ROOT format is more generic and also does a good job of serialising generic objects, but this isn't really my area of expertise. I also find that for all its many (many) faults, RooFit/RooStats doesn't have a generic alternative.
- beojan 9y ago> ROOT files are a halfway decent file format, but HDF5 is much better. I understand your point, but HDF5 isn't better. For one, HDF5 files tend to be considerably larger.