MIKE(ID:5822/mik002)Algebraic Modula 2Structured programming language for algebraic computation, based on Modula but with left to right assignment Borrowed the notion of the rail (consistent type aggregates) from 3-Lisp, and some of the typographical conventions of TeX to serve as maths symbols Related languages
References: DOI Extract: Introduction Introduction Although it is perfectly possible to develop algebraic and symbolic algorithms using classical structured programming languages like PASCAL, MODULA-2 or C, those who have attempted it will agree that in most cases a lot of programming overhead is needed and that awkward programming techniques need sometimes be used. The programming language LISP, a common alternative for this kind of work, also has several drawbacks, such as the unnatural prefix notation for mathematical operations, the many parentheses and the lack of a proper type checking mechanism. In our opinion what is really needed is a programming language that combines the best of both groups. Some years ago therefore we set out to develop a language of our own, called MIKE (for no particular reason). Although MIKE was originally intended for computer algebra, we like to point out that MIKE is quite different from traditional computer algebra systems like REDUCE or MACSYMA. These systems provide an interactive frontend to the mathematician who wants to be relieved of tedious mathematical calculations. MIKE is a non-interactive programming language for the development of abstract mathematical and symbolic algorithms. Additionally, traditional computer algebra systems tend to favor a small set of mathematical structures (mostly Z, Q, R, C and polynomials and matrices over these rings), but MIKE is meant to be used for less commonly known mathematical structures (like finite groups, finite fields, p-adic numbers,...). In this, MIKE resembles the computer algebra language SCRATCHPAD-II, developed by IBM. MIKE is more than a computer algebra language and may be used for symbolic work in general, such as the development of expert systems, mathematical provers and proof checking programs, even programming languages. Indeed, the MIKE compiler itself was written in an early version of MIKE. in SIGPLAN Notices 27(06) June 1992 view details |