3 ms·
>Maybe take a shot at parsing JSON in C++ and see if the nostalgia survives the process. I have used this library in the past and was actually pretty easy htt
by jbandela1 3y ago
>Maybe take a shot at parsing JSON in C++ and see if the nostalgia survives the process.
I have used this library in the past and was actually pretty easy
https://github.com/nlohmann/json https://github.com/nlohmann/json
- celie56 3y agoYour recommended json solution was also my first thought but if you do not have the ability to easily introduce a new dependency then the op is correct. If I have an existing JSON file that I want to quickly parse for a demo project there is almost zero chance I would pick C++. In comparison, Python is already installed in many environments and has built-in json parsing.
- JonChesterfield 2y agoA mere 25k lines of self contained C++, bundled in a single header as the one true distribution format. I note the CI cmake script at a thousand lines of cmake. That's a very idiomatic representation of a C++ library, thank you for the example.
- SubjectToChange 2y agoA mere 25k lines of self contained C++,… Oh come on now, about 7.5k of those lines are comments and/or blank lines. Furthermore, a good chunk of the code is devoted to type checking, thorough error handling, compiler compatibility and/or workarounds, etc, all within the restrictions of C++11. … bundled in a single header as the one true distribution format. Yes, build systems are a significant pain point for C++ and C. Many users prefer to largely avoid the issue and use header-only libraries. That said, Conan and vcpkg are making genuine strides at improving the issue. I note the CI cmake script at a thousand lines of cmake. This is ridiculous. It’s a CI script running multiple test suites over dozens of compiler versions, of course it’s going to be a lot. Would it make you feel better if that CI script didn’t exist? If not, then what’s the “correct” size for CI script? That's a very idiomatic representation of a C++ library, thank you for the example. The library is genuinely good. It’s portable, well tested, user friendly, and widely supported. Your snark is unwarranted.