ACM Communications in Computer Algebra, Vol. 45, No. 4, Issue 178, December 2011 Ways to implement computer algebra David R. Stoutemyer compactly Abstract Computer algebra had to be implemented compactly to t on early personal computers and hand-held calculators. Compact implementation is still important for portable hand-held devices. Also, compact implementation increases comprehensibility while decreasing development and maintenance time and cost, regardless of the platform. This article describes several ways to achieve compact implementations, including: ¢ Exploit evaluation followed by interpolation to avoid implementing a parser, such as in PicoMathtm . ¢ Use contiguous storage as an expression stack to avoid garbage collection and pointerspace overhead, such as in Calculus Demontm and TI-Math-Engine. ¢ Use various techniques for saving code space for linked-storage representation of expressions and functions, such as in muMathtm and Derive R Introduction Inside every large program is a small program struggling to emerge. Hoare s law of large programs. This article is a written version of a PowerPoint presentation at the 2008 Applications of Computer Algebra conference. Fortran was my rst programming language, around 1965. I was disappointed when I learned that it could only substitute numbers into formulas, rather than
/lp/association-for-computing-machinery/ways-to-implement-computer-algebra-compactly-WsCPXiKQ2X