| ▲ | pjmlp 4 hours ago | |||||||||||||||||||||||||||||||||||||||||||
That shows how much you know modules, what is your experience with header units? Modules can be critized by having been added to the standard without field experience, from the two implementations, Apple's clang module maps, and Microsoft's modules prototype that was the base of C++20 proposal, none of them is what was standardised in the end. The standard also was ratified without any feedback from tool vendors, which have had to come up with their own solutions outside the standard. IDEs still struggle to support them. So no, it isn't "already boils down to shipping binary + module." Contracts are much worse, because beyond some prototypes that the community could hardly provide any feedback, all the issues that have been raised regarding compiler toolchains, and shipping binary libraries, national bodies request for comments have been had waved as not being a big issue. Yeah it goes to show how some want contracts at any cost. | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | locknitpicker 4 hours ago | parent [-] | |||||||||||||||||||||||||||||||||||||||||||
> That shows how much you know modules, what is your experience with header units? More than enough to understand quite well that at this point it is a tooling issue. https://gitlab.kitware.com/cmake/cmake/-/work_items/25293 If you had any experience on the topic you'd be quite aware of the issues caused by tools scrambling to support the feature. For example, GCC only claimed official support for modules a few months ago with the release of GCC 15. Even Ubuntu 2026 LTS broke modules support. If you want to learn about the topic, I recommend you start by getting acquainted with CMake and its state of modules support. https://cmake.org/cmake/help/latest/manual/cmake-cxxmodules.... It goes to show how your opinions contrast with your knowhow. > Contracts are much worse Nonsense. Worst case they are annotations you can safely ignore. The fact you try to portray annotations used to aid static analysis as "much worse" than a complete revolution of how build systems manage dependencies and binaries just goes to show how detached from reality your comments are. | ||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||