Welcome To Your Website
Our book „V.Z. Aladjev, V.K. Boiko, M.L. Shishakov. Art of programming in the Mathematica system“ (Link) focuses on a rather important aspect – procedural and functional programming supported by the Mathematica. This aspect is of particular importance not only for appendices but also above all it is quite important in the creation of the user tools that extend the most frequently used standard tools of the system and/or eliminate its shortcomings, or complement its with the new facilities. Software represented in the book contains a number of rather useful and effective receptions of procedural and functional programming in the Mathematica that extend its software and allow sometimes much more efficiently and easily to program the program objects for various purposes.
The represented tools is further essential development of our MathToolBox (Link) package and contains more than 950 means of different purpose which eliminate restrictions of a number of standard tools of the Mathematica system, and expand its software with new tools. In this context, the package can serve as a certain additional tool of procedural and functional programming, especially useful in the numerous appendices where certain nonstandard evaluations have to accompany programming. At that, the tools presented in the package have a direct relationship to certain principal questions of procedural and functional programming in the Mathematica system, not only for the decision of the applied problems, but, first of all, for creation of software extending frequently used possibilities of the system and/or eliminating their defects, or adding the system with new facilities. The additional tools composing the above package embrace the next sections of the Mathematica system, namely:
■ additional tools in interactive mode of the Mathematica system
■ additional tools of processing of expressions in the Mathematica system
■ additional tools of processing of symbols and strings in the Mathematica
■ additional tools of processing of sequences and lists in the Mathematica
■ additional tools extending the standard Mathematica functions or its software as a whole (the control structures of branching and loop, etc.)
■ definition of procedures in the Mathematica software
■ definition of the user functions and pure functions in the Mathematica software
■ tools of testing of procedures and functions in the Mathematica software
■ headings of procedures and functions in the Mathematica software
■ formal arguments of procedures and functions
■ local variables of modules and blocks; tools of their processing
■ global variables of modules and blocks; tools of their processing
■ attributes, options and values by default for arguments of the user blocks, functions and modules; additional tools of their processing
■ some useful additional tools for processing of blocks, functions and modules
■ additional tools of the processing of internal Mathematica datafiles
■ additional tools of the processing of external Mathematica datafiles
■ additional tools of the processing of attributes of directories and datafiles
■ additional and some special tools of processing of datafiles and directories
■ additional tools of operating with packages and contexts ascribed to them
■ a set of procedures for computer research of one–dimensional cellular automata in the Mathematica system and simplification of programming of tools for solution of various problems in this field.
The represented tools are provided with the detailed descriptions, usages, typical examples and features of their application. The given book is oriented on a wide enough circle of the users of the computer mathematics systems, researchers, teachers and students of universities for courses of computer science, mathematics, physics and many other natural disciplines. The book will be of interest also to the specialists of the industry and technology that use the computer mathematics systems in professional activity. At last, this book is a rather useful handbook with fruitful methods on the procedural and functional programming in the Mathematica system. Along with the illustrative purposes the tools presented in this monograph quite can be used and as enough useful tools extending the Mathematica software that rather significantly facilitate programming of a wide range of the problems first of all having the system character. At last, in our opinion, the detailed analysis of the given source codes can be very effective remedy on the path of deeper mastering of programming in the Mathematica system. Our experience of holding of the master classes of various levels on the systems Mathematica and Maple with all evidence confirms expediency of joint use of both the standard tools of the systems of computer mathematics, and the user tools created in the course of programming of the various applications.