Towards a diagrammatic modeling of the LinBox C++ linear algebra library
Jean-Guillaume Dumas (LMC - IMAG), Dominique Duval (LMC - IMAG)

TL;DR
This paper introduces DML, a diagrammatic modeling language based on category theory, to simplify understanding and reverse engineering of complex C++ libraries like LinBox, emphasizing template and polymorphic structures.
Contribution
The paper presents DML, a novel diagrammatic language that effectively models complex object-oriented and template-based C++ structures, demonstrated on the LinBox library.
Findings
DML effectively models complex C++ object-oriented features.
Reverse engineering of LinBox is simplified using DML.
DML provides clear diagrams for template and polymorphic mechanisms.
Abstract
We propose a new diagrammatic modeling language, DML. The paradigm used is that of the category theory and in particular of the pushout tool. We show that most of the object-oriented structures can be described with this tool and have many examples in C++, ranging from virtual inheritance and polymorphism to template genericity. With this powerful tool, we propose a quite simple description of the C++ LinBox library. This library has been designed for efficiency and genericity and therefore makes heavy usage of complex template and polymorphic mecanism. Be reverse engineering, we are able to describe in a simple manner the complex structure of archetypes in LinBox.
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
TopicsLogic, programming, and type systems · Parallel Computing and Optimization Techniques · Embedded Systems Design Techniques
