MathToolBox - это пакет содержит процедуры и функции, созданные В.З. Аладьевым в процессе подготовки книг, изданных в Беларуси, Эстонии, Литве, России, Украине и США Пакет MathToolBox содержит более 1420 средств различного назначения, которые устраняют ограничения ряда стандартных средств Mathematica либо дополняют их наряду с расширением Mathematica новыми средствами.
В этом контексте пакет может служить определенным дополнительным средством процедурного и функционального программирования, особенно полезным в многочисленных приложениях, где некоторые нестандартные вычисления целесообразно использовать в программировании в среде Mathematica. При этом средства, представленные в пакете, имеют самое прямое отношение к некоторым принципиальным вопросам процедурного и функционального программирования в Mathematica не только для решения прикладных задач, но и, в первую очередь, для создания расширений часто используемых программных продуктов и/или устранения их дефектов либо расширения системы новыми средствами.
Представленное в пакете программное обеспечение содержит ряд весьма полезных и эффективных приемов программирования в Mathematica, а также расширяет ее программное обеспечение, что позволяет гораздо проще и эффективнее программировать задачи различного назначения. MathToolBox не только содержит множество полезных процедур и функций, но может служить довольно полезным набором примеров программирования, использующих как стандартные, так и нестандартные приемы функционально-процедурного программирования. Средства пакета могут также служить в качестве своего рода продвинутого задачника по программированию в Mathematica.
Средства, составляющие пакет, охватывают следующие разделы системы Mathematica, а именно
- дополнительные инструменты в интерактивном режиме работы системы;
- дополнительные средства обработки выражений;
- дополнительные средства обработки символов и строк;
- дополнительные средства обработки последовательностей и списков;
- дополнительные средства, расширяющие стандартные встроенные функции или программное обеспечение системы в целом (структуры управления ветвлением и циклом и т.д.);
- определение процедур в Mathematica;
- определение пользовательских и чистых функций;
- средства тестирования процедур и функций;
- заголовки процедур и функций;
- формальные аргументы процедур и функций;
- локальные переменные модулей и блоков; средства их обработки;
- глобальные переменные модулей и блоков; средства их обработки;
- атрибуты, опции и значения по умолчанию для аргументов пользовательских блоков, функций и модулей; дополнительные средства их обработки;
- полезные дополнительные средства для обработки процедур и функций;
- дополнительные средства обработки внутренних файлов Mathematica;
- дополнительные средства обработки внешних файлов Mathematica;
- дополнительные средства обработки атрибутов каталогов и файлов;
- дополнительные и специальные средства обработки каталогов и файлов;
- дополнительные средства работы с пакетами и приписываемыми им контекстами;
- организация пользовательского программного обеспечения в Mathematica.
Средства пакета могут быть успешно использованы как достаточно приемлемый набор задач для программирования массовых задач в Mathematica, иллюстрирующий как стандартные, так и нестандартные приемы программирования в Mathematica.