Towards CNC Programming using Haskell

Gustavo Arroyo, Claudio Ochoa, Josep Silva, Germán Vidal

© Springer-Verlag
IX Ibero-American Conference on Artificial Intelligence (IBERAMIA 2004), Puebla (Mexico). Springer LNCS 3315, pp. 386-395, 2004

Recent advances in Computerized Numeric Control (CNC) have allowed the manufacturing of products with high quality standards. Since CNC programs consist of a series of assembler-like instructions, several high-level languages, such as AutoLISP, APL or OMAC, have been proposed in order to raise the programming abstraction level. Unfortunately, the lack of a clean semantics in these languages prevents the development of formal tools for program analysis and manipulation. In this work, we propose the use of Haskell for CNC programming. Haskell is a modern pure functional language that includes advanced features such as lazy evaluation, higher order combinators, etc. The declarative nature of Haskell provides an excellent basis to develop program analysis and manipulation tools, and, most importantly, to formally prove their correctness. We thus propose the use of Haskell for high-level CNC programming, and show its practical applicability in this context.

Available: PDF BibTeX-Entry


Germán Vidal