Иллюстрированный самоучитель по Mathematica 3/4

Основы программирования

  • Методы программирования

    Ранее не раз говорилось, что Mathematica, в сущности, является диалоговым языком программирования сверхвысокого уровня. Однако мы еще не поднимались (или не опускались) до уровня подготовки программ в среде Mathematica 3/4.
  • Образцы и их применение

    Образцы (patterns) в системе Mathematica служат для задания выражений различных классов и придания переменным особых свойств, необходимых для создания специальных программных конструкций, таких как функции пользователя и процедуры.
  • Функции пользователя

    Понятие функции ассоциируется с обязательным возвратом некоторого значения в ответ на обращение к функции по ее имени с указанием аргументов (параметров) в квадратных скобках. Возврат функциями некоторых значений позволяет применять их наряду с операторами для составления математических выражений.
  • Чистые функции. Анонимные функции.

    Иногда может потребоваться создание функции, не имеющей имени (например, если функция будет использоваться только один раз, сразу же после ее создания). Эта функция представляется только выражением без идентификатора, отсюда и ее название – чистая функция (pure function).
  • Суперпозиция функций. Функции Fixed Point и Catch.

    При функциональном программировании часто используется суперпозиция функций. Для ее реализации используются следующие функции: | Nest [expr, x, n] – n раз применяет выражение (функцию) ехрг к заданному аргументу х,
  • Реализация рекурсивных и рекуррентных алгоритмов

    Рассмотрим несколько простых примеров, выявляющих суть функционального программирования.
  • Пример программирования графической задачи

    Графические задачи составляют значительную часть задач, решаемых с помощью Mathematica. С точки зрения программирования эти задачи не имеют особой специфики. Большая часть из них сводится к заданию функции, описывающей график, и применению одной из многочисленных графических функций системы с соответствующими опциями и директивами. | На рис.
  • Использование процедур

    В основе процедурного программирования лежит понятие процедуры и типовых средств управления – циклов, условных и безусловных выражений и т. д. Процедурный подход – самый распространенный в программировании, и разработчики Mathematica были вынуждены обеспечить его полную поддержку.
  • Организация циклов

    Многие задачи в системе Mathematica решаются с использованием линейных алгоритмов и программ. Они могут быть представлены непрерывной цепочкой выражений, выполняемых последовательно от начала до конца.
  • Условные выражения и безусловные переходы

    Для подготовки полноценных программ помимо средств организации циклов необходимы и средства для создания разветвляющихся программ произвольной структуры. Обычно они реализуются с помощью условных выражений, позволяющих в зависимости от выполнения или невыполнения некоторого условия (condition) выполнять те или иные фрагменты программ. | Рис. 10.5.
  • Проблемы совместимости

    Мы уже не раз обращали внимание на то, что при создании документов нередки конфликты между переменными, назначаемыми пользователем, и переменными, входящими в программы ядра, между функциями пользователя и встроенными функциями, между их заголовками и т. д.
  • Понятие о контекстах. Работа с контекстами.

    Для разрешения подобных противоречий в системе Mathematica введен особый механизм контекстов. Напомним, что под контекстом подразумевается некоторое разъяснение характера связанных с контекстом объектов.
  • Подготовка пакетов расширений системы Mathematica. Типовая структура пакетов расширения.

    Мощным средством расширения возможностей системы Mathematica является подготовка пакетов расширений. Пакеты расширений позволяют создавать новые процедуры и функции и хранить их на диске в виде файлов с расширением .m.
  • Средства создания пакетов расширений

    Для создания пакетов расширений в общем случае используются следующие средства системы: | Begin ["context'"] – устанавливает текущий контекст; | BeginPackage ["context'"] – делает context единственным активным контекстом. Возможна также форма BeginPackage [ "context" ", { "needl' ", "need2'",…}];
  • Текстовые сообщения и комментарии

    Ценность многих программ на любом языке программирования нередко сводится к нулю из-за отсутствия подробных текстовых комментариев. Из-за этого даже сами разработчики программ через месяц-другой перестают понимать собственные творения.
  • Защита идентификаторов от модификации

    Атрибут защиты Protected | Как уже отмечалось, система Mathematica позволяет вводить константы, переменные и функции со своими именами – идентификаторами. Между функциями можно задавать различные отношения, в том числе и те, которые не соответствуют правилам, заданным в ядре системы.
  • Примеры подготовки пакетов расширений

    Наиболее сложным моментом работы с системой Mathematica является разработка пакетов расширения профессионального качества. Именно такие пакеты позволяют приспособить всю мощь системы к решению тех задач, которые полезны конкретному пользователю. | Начать работу с системой можно за несколько часов.
  • Создание средств визуального программирования

    Что такое визуально-ориентированное программирование | Под визуально-ориентированным программированием обычно понимается автоматическая генерация кодов программ на некотором языке программирования при активизации различных графических объектов – чаще всего кнопок с наглядным изображением программируемых действий или с надписями, указывающими на такие действия.
  • Отладка и трассировка программ. Некоторые правила культурного программирования.

    Отладка программ, за исключением самых простейших, дело далеко не простое. Начальный опыт программирования на любом языке приходит спустя годы практической работы с ним. Эти сроки намного сокращаются, если пользователь всерьез знаком хотя бы с одним, а лучше с несколькими языками программирования.
  • Трассировка программных модулей

    В практике подготовки и отладки программ важное значение имеет наличие специальных средств отладки программ по шагам – средств трассировки. Mathematica имеет ряд функций для осуществления трассировки своих программных конструкций. | Функция Trace [ехрг] позволяет выполнить трассировку выражения ехрг.
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.