Pull to refresh

Comments 21

Почему каждый раз когда я читаю Ствиена Вольфрама, я читаю о «революции»?
Потому что от Матлаба отстает лет на 10-15. А продавать как-то надо…
Вопрос холиварный, во многих областях Matlab отстает аналогично, а в некоторых совершенно бессилен. Это просто софт для разных плоскостей работы, в целом.
Хм. Matlab — системное моделирование, инженерные разработки во множестве областей техники и автоматическая генерация кода. Плюс мощный бэкэнд в виде скриптового языка и набора функций. Визуализация, конечно ни к черту — унылая консоль.
Да, теоретической математикой, наверное, удобнее заниматься в том же вольфраме, но вот остальное…
Матлаб, собственно, те самые 10-15 лет назад прошел через все это — всякие «более 700 новых функций» и т.д. Если в вольфраме, по итогу, это все окажется удобнее — честь им и хвала.
Matlab, например, умеет символьные вычисления нормально? Мне всегда казалось, что в этом вопросе он совершенно безнадежен, с чем его ни сравнивай — хоть с Mathematica, хоть с Maple.
Тут сложный вопрос. В Maple, например, алгебра гораздо лучше, правда имхо Axiom еще сильнее в этом плане. А в Mathematica много всяких прикольных и иногда полезных рюшечек, например, примитивные геометрические вычисления или построение социальных графов :).

Так что никакого ультимативного пакета не существует.
Количество упоминаний в маркетинговых материалах слова «революция», «самый» и прочее — верный признак того, что все революции остались далеко позади и сейчас идут обычные доработки.

Про действительно революционный продукт либо и так всем очевидно, что да — это «что-то особенное», либо и сам его создатель этого толком не осознаёт и только годы спустя выясняется, что да — это таки было «оно».
Иногда кому-то не кажется удивительным, что, по крайней мере, можно иметь такую-то и такую-то функцию, даже хотя на самом деле приятнее, чтобы она была такой же совершенной, как в Mathematica 10.

Взрыв мозга!
UFO just landed and posted this here
Отлично, спасибо vk2. Это пожалуй было самое трудное место во всей статье.
UFO just landed and posted this here
Странно, при таком изобилии возможностей Mathematica, видеть у неё весьма слабый графический output, недалеко ушедший от школьно-студенческих standalone-программ на C++. В любом хорошем научном журнале при редактуре непременно попросят исправить графики и диаграммы.
Это глубочайшее заблуждение. demonstrations.wolfram.com/ Я просто оставлю это здесь.
Конфигурируемость всех функций полная. А стандартный вывод радует глаз. Если нужно под конкретный журнал подогнать — это сделать легко нативными средствами просто определяя параметры функций вывода
UFO just landed and posted this here
Официальная справка настолько крута что ее хватает в 90% случаев. Подход вы сами для себя выбирает, но из примеров справки можно многое подчеркнуть. Там есть вообще всё
Если хотите супер глубины, красоты, изящных и красивых примеров — читайте четырехтомник Майкла Тротта (Michael Trott).
Есть книга Леонида Шифрина www.mathprogramming-intro.org/
Также у нас в сообществе vk.com/docs?oid=-1172233 в документах группы много материалов, книг и презентаций.
Наконец есть на сайте Русскоязычной поддержки wolframmathematica.ru/ перевод встроенных How to, а на канале YouTube www.youtube.com/user/WolframMathematicaRu множество обучающих видео.
Является ли язык «Вольфрам» контекстно-свободным? То что функции полиморфны, (их интерпретация зависит от параметров) вроде бы ясно. Но зависит ли от истории запросов? От глобальных переменных или установок (типа user_location)? Если да, то можно ли гарантировать воспроизводимый результат?
Насколько «геометрические вычисления» согласуются с бытовой интуицией, поймёт ли Mathematica слово «направо» а) в контексте построения пути на карте б) в некоторой 3D сцене?
Все встроенные символы находятся в контексте System`, все пользоватльские переменные, по умолчанию, в контексте Global`, эти и некоторые другие контексты по умолчанию не отображаются. Также всегда можно сделать свой контекст или сколь угодно вложенных контекстов.
Функции бывают разного типа. Есть функции с фиксированным числом аргументов, с произвольным числом аргументов, с опциями и опциональными переменными, здесь полная свобода.
Язык не имеет (за исключением некоторых функций, вроде AppendTo) сторонних эффектов (side-effect), это означает, что символы по умолчанию и функции системой не модифицируются, а выводятся лишь результат их модификации, так что все сторонние эффекты — это дело рук пользователя. Результаты абсолютно воспроизводимы. Один и тот же код на разных системах будет давать один результат, только за разное время, что и понятно, так как всюду процессоры и видеокарты стоят по мощности разные. При этом код из любой версии читается в любой версии выше, и в целом обратное тоже верно (если не используются функции из более поздних версий).
Что касается последнего, то напрямую именно это пока не поймет, но задать это не проблема.
Спасибо за развёрнутый ответ. То есть, язык условно говоря, контекстно-свободный. Это удобно, но от «революционного языка» хочется большего: способности извлекать из контекста дополнительную информацию, самообучения, глубокого абстрагирования. Впрочем, продуманная система типов способна неплохо удовлетворять потребности в абстракции.
Sign up to leave a comment.