## Maple V - language reference manual.(English)Zbl 0758.68038

New York etc.: Springer-Verlag. XV, 267 p. (1991).
The Maple V-language reference manual certainly constitutes the most important part of the Maple V documentation trilogy of the Springer Verlag. On 260 pages it contains the essential information about the Maple language, which is the high level language of the Maple computer algebra system. Furthermore this volume has an outline of miscellaneous facilities of the system, a very brief overview of the library and a description of the particularities of the Maple system under different operating platforms like X, UNIX and DOS.
In the introductory section the users curiosity is aroused by the presentation of the functionality of some of the Maple commands and Maple datatypes.
In the next section the character sets, the keywords and the operators are introduced. Statements and expressions are described in section 3, ranging from names and strings over lables to description of sets, lists, relational operators then going to produces, functions and functional operators. This section is complemented by a description of the formal syntax of the language.
In section 4 datatypes are treated and the user learns how to work with them. Substitution of expressions and operands are treated here in detail, although the crucial function $$op$$ is treated only briefly, and that scattered at several places (not a good idea to the opinion of the reviewer).
Section 6 concentrates on arrays and tables and gives an overview of the evaluation rules.
Section 7 describes procedures on 15 pages, a little bit short and more examples were desirable at this point. This chapter then is complemented by a description of the interrelation between operators and procedures.
Section 8 is the one the experienced computer algebra user will immediately read after having seen its title in the table of contents. It is “Internal representation and manipulation”. It certainly gives some basic insight into the internal system but only on the superficial level. The user certainly does not get much information about how the internal design and the representation of different data structures effects the performance of the system. This chapter somehow is a disappointment.
The following chapter on plotting is more detailed, although it only gives a brief glimpse on the plotting commands of Maple V. Some nice examples (in colour), together with the commands which generated them, are presented here.
In chapter 11 the debugging facilities (mint, print level, trace) are discussed, the alias mechanism is explained, and the status messages of the system are introduced.
In the next chapter an overview of the Maple library is given. However, this is hardly more than a list of library functions which are available. However, the list of library commands is impressive and shows the maturity of the system. The language manual concludes by giving some unstructured information with respect to different operating systems.
The language reference manual hardly seems to be an improvement over former versions of the Maple reference manual. More examples are desirable and less cross references to the Maple library volume would make the book more self-contained. In the early days the Maple reference manual and the tutorial were in the same volume. While the tutorial has profited from that separation the language reference manual has suffered. Combining these two volumes again into one volume and enlarging that by even more examples, certainly would be a service to the user community.

### MSC:

 68W30 Symbolic computation and algebraic computation 68-00 General reference works (handbooks, dictionaries, bibliographies, etc.) pertaining to computer science 68N15 Theory of programming languages 12Y05 Computational aspects of field theory and polynomials (MSC2010) 13P99 Computational aspects and applications of commutative rings

### Keywords:

Maple language; Maple computer algebra system

Maple