🤖 AI Summary
Computer algebra systems (CAS) suffer from progressive portability degradation over decades, undermining long-term maintainability and cross-platform/cross-generational adaptability. Method: We conduct a systematic historical analysis of four major CAS—Reduce, Maple, Axiom, and Aldor—spanning forty years, examining how architectural design, language abstraction, and build mechanisms impact sustainability. We propose the first portability-aware, layered model tailored to the mathematical software lifecycle, explicitly characterizing the inherent tension between semantic consistency and implementation heterogeneity. Drawing on compiler techniques, domain-specific language (DSL) design, metaobject protocols, and retargetable build practices, we identify six fundamental portability challenges. Contribution/Results: Our work establishes principled portability design guidelines and an evolutionary assessment framework for next-generation symbolic computation systems, thereby advancing the sustainable development of mathematical software.
📝 Abstract
We have been involved in the creation of multiple software systems for computer algebra, including Reduce, Maple, Axiom and Aldor as well as a number of smaller specialised programs. We relate observations on how the meaning of software portability has changed over time and how it continues to evolve. We describe how the systems with which we have first-hand experience have achieved portability, how the central issues have changed over time and the challenges that remain.