Принципы и методология Ключевые идеи, лежащие в основе платформы вычислительного интеллекта Wolfram
Наукоемкое программирование
Максимально возможный объем встроенных знаний
В отличие от других языков программирования философия языка Wolfram Language состоит в том, чтобы включить в него как можно больше знаний как алгоритмических, так и знаний об окружающем нас мире.
- Вне всяких сомнений, наибольшее когда-либо собранное сплетение алгоритмов
- Содержит в себе результаты трёх десятилетий разработок современных алгоритмов в системе Mathematica
- Наибольший в мире информационный банк пригодных для вычисления знаний
- Постоянно курируемые данные из тысяч областей знаний, которыми пользуется Wolfram|Alpha
Мета-алгоритмы и супер функции
Автоматизирует все, что возможно
В философии языка Wolfram Language - автоматизировать как можно больше операций, что позволяет программистам сосредоточиться на том, что будет делать программа, а язык автоматически решит как этого достичь.
- Тысячи авторских мета-алгоритмов для автоматического выбора оптимальных методов
- Детальный контроль над параметрами алгоритмов для специалистов, автоматизированная работа для остальных пользователей
- Автоматизация вычислений, презентации результатов, подключаемости, пользовательских интерфейсов...
- Сводите размер и сложность программ к минимуму
Все части языка подходят друг другу
Доводите внутреннюю увязку до максимума
Строго придерживаясь основных принципов проектирования в каждой из своих многочисленных функций, язык Wolfram Language сохраняет свою единообразность и элегантность, где все части языка идеально стыкуются друг с другом.
- Непосредственная эксплуатационная совместимость функций из самых разных областей знаний
- Максимум гибкости конструкций программирования
- Максимальная предсказуемость и изучаемость
- Читаемость и понимаемость программного кода
Всё - это выражение
Представление символьными выражениями всего, чего угодно
Язык Wolfram Language представляет все - то есть данные, формулы, код, графику, документы, интерфейсы пользователя и пр. в виде символьных выражений, что позволяет ему выйти на новый уровень гибкости и возможностей программного кода.
- Постепенное программирование: любой фрагмент кода является непосредственно исполняемым
- Любая форма данных имеет прямое представление в системе
- Программа может использовать любой объект, будь то изображение, документ, пр.
- Программы могут напрямую оперировать как над структурами, так и над их содержимым
WDF: общая схема компании Wolfram для данных
Используйте полную встроенную модель окружающего мира
Благодаря своему родству с Wolfram|Alpha, язык Wolfram Language умеет не только выполнять вычисления с абстрактными структурами данных, но и вычисления прямо касающиеся объектов из окружающего мира.
- Естественным образом используйте единицы измерений, даты, географические координаты и многое другое
- Стандартное представление для миллионов самостоятельных объектов в окружающем мире
- Расширяемая символьная система для представления данных об окружающем мире
- Постоянно обновляемый инфобанк со знаниями, выдержавшими проверку в Wolfram|Alpha
Понимание естественного языка (ПЕЯ)
Используйте в языке языковый ввод в свободной форме
Используя достижения Wolfram|Alpha, язык Wolfram Language позволяет свободно использовать свободную форму языкового ввода в программах.
- Начинайте использовать язык Wolfram Language без предварительного навыков программирования
- Удобным образом называйте самостоятельные объекты из окружающего мира их повседневными именами
- Широкая поддержка ПЕЯ, прошедшая проверку в Wolfram|Alpha
- Используйте ПЕЯ при написании программ, чтобы обозначать объекты и понятия из окружающего мира
- Включайте поддержку понимания естественного языка в свои собственные программы
Система универсального развертывания
Используйте язык где угодно: обычные компьютеры,
облачные системы, мобильные устройства,
встроенные системы,и т.д.
Используя результаты трёх десятилетий разработки программного обеспечения, любая программа на языке Wolfram Language может быть непосредственно введена в действие на полном спектре современных производственных сред.
- Прозрачное выполнение локально или в облаке
- Непосредственное создание веб интерфейсов API для любой программы на языке Wolfram Language
- Беспрепятственное использование языка Wolfram Language в других программных или аппаратных системах
- Используйте язык Wolfram Language, чтобы символьно управлять его собственным развертыванием
CDF: Формат вычислительных документов
Используйте вычислительные документы как часть языка
Блокноты, позволяющие смешивать код, текст, графику, пользовательские интерфейсы и пр. являются частью языка Wolfram Language
- Работайте над одним документом, содержащим программу, примеры, документацию и пр.
- Программным образом создавайте полноценные отчеты и документы
- Беспрепятственно создавайте интерактивные элементы, за которыми стоят вычисления
- Более 11 тысяч примеров в проекте Wolfram Demonstrations
WSTP (Wolfram протокол символьной передачи информации),
проект Wolfram Connected Devices и др.
Удобным образом подключайтесь к чему угодно
Язык Wolfram Language обладает встроенной поддержкой подключаемости к широкому спектру языков, сервисов, программ, форматов и периферийных устройств.
- Используйте символьные выражения для стандартизации работы с внешними данными и программами
- Беспрепятственно устанавливайте внешние соединения через Wolfram Cloud
- Работайте с внешними устройствами в режиме реального времени непосредственно в самом языке
Все является интерактивным
Объединяйте написание и выполнение программ
Собственная среда языка Wolfram Language является в полной мере интерактивной и позволяет напрямую выполнять любой фрагмент кода.
- Непосредственно экспериментируйте с написанным фрагментом кода
- Напрямую создавайте визуализации и анализ в вашем коде
- Беспрепятственно практикуйте пошаговое/исследовательское программирование
Полная масштабируемость
Удобство - для программ любых размеров
Язык Wolfram Language является подходящим как для программ размером от одной строчки, так и для проектов размером в несколько миллионов строчек кода; как предназначенных для одного пользователя, так и для крупномасштабного общественного использования.
- Удобные интегрированные среды разработок как для интерактивного использования, так и написания крупных программных проектов
- Пишите код на языке Wolfram Language и сразу же исполняйте его параллельным образом
- Ежегодные конкурсы однострочных программ демонстрируют выразительность языка
- Размер кода Wolfram Language, реализующего Wolfram|Alpha превышает 15 миллионов строчек
Язык, где переплелись множественные парадигмы
Язык должен быть как можно более выразительным
Посредством своей оригинальной символьной природы язык Wolfram Language является одновременно и знакомым, и новаторским, элегантно сочетая многие парадигмы программирования.
- Почти всё короче на языке Wolfram Language, чем на каком-либо другом языке
- Встроенные команды непосредственно соответствуют понятиям
- Широкое функциональное программирование промышленного класса
- Символьное программирование, основывающееся на шаблонах
- Твердые теоретические принципы
Три десятилетия истории
Поддерживайте преемственность и придерживайтесь
выбранной стратегии
Создававшийся как часть системы Mathematica, базис языка Wolfram Language поддерживал обратную совместимость на протяжении более трёх десятилетий.
- Последовательный процесс анализа проектных решений в течение трёх десятилетий
- Установившийся коллектив под руководством Стивена Вольфрама