INTRODUCTION

The tex2html_wrap_inline302 compiler allows users of computer algebra to develop programs in a context where multiple programming languages are employed. The compiler translates programs written in the tex2html_wrap_inline302 programming language [24][25] to a low-level intermediate language, Foam [26], from which it can generate stand-alone programs, native object libraries to be linked with other applications, or code to be read into closed environments. In addition, Foam code may be directly executed using an interpreter provided with the tex2html_wrap_inline302 compiler.

The tex2html_wrap_inline302 programming language provides support for object-oriented and functional programming styles. It is ``higher-order'' in the sense that both types and functions are first class, and may be manipulated in the same ways as any other values. The primary considerations in the formulation of the language have been generality, composibility, and efficiency. The language has been designed to admit a number of important optimizations, allowing compilation to machine code which is in many instances of efficiency comparable to that produced by a C or Fortran compiler.

The original motivation for tex2html_wrap_inline302 comes from the field of computer algebra: to provide an improved extension language for the Axiom computer algebra system [14].





Stephen Watt
Wed Sep 18 19:39:57 MET DST 1996