Large Code Base Change Ripple Management in C++: My thoughts on how a new Boost C++ Library could help
Niall Douglas

TL;DR
This paper discusses the increasing complexity of C++ standards and proposes a novel, lightweight transactional graph database implementation using Boost libraries to improve complexity management in future C++ codebases.
Contribution
It introduces a new implementation solution combining Boost libraries to create a lightweight transactional graph database for better complexity management in C++17 and beyond.
Findings
Proposes a standardised transactional graph database based on Boost libraries.
Addresses complexity management issues in future C++ standards.
Suggests integration of database with C++ runtime for improved scalability.
Abstract
C++ 98/03 already has a reputation for overwhelming complexity compared to other programming languages. The raft of new features in C++ 11/14 suggests that the complexity in the next generation of C++ code bases will overwhelm still further. The planned C++ 17 will probably worsen matters in ways difficult to presently imagine. Countervailing against this rise in software complexity is the hard de-exponentialisation of computer hardware capacity growth expected no later than 2020, and which will have even harder to imagine consequences on all computer software. WG21 C++ 17 study groups SG2 (Modules), SG7 (Reflection), SG8 (Concepts), and to a lesser extent SG10 (Feature Test) and SG12 (Undefined Behaviour), are all fundamentally about significantly improving complexity management in C++ 17, yet WG21's significant work on improving C++ complexity management is rarely mentioned…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDistributed and Parallel Computing Systems · Scientific Computing and Data Management · Parallel Computing and Optimization Techniques
