Волфрам (език за програмиране) – Уикипедия
Волфрам | |
Парадигма | мулти-парадигма |
---|---|
Автор | Стивън Волфрам |
Софтуерен разработчик | Волфрам Рисърч |
Платформа | междуплатформен софтуер |
Софтуерен лиценз | собствен, несвободен |
Файлово разширение | .nb .m .wl |
Уебсайт | www.wolframlanguage.org www.wolfram.com/language/ |
Езикът Волфрам (на английски: Wolfram Language) е мулти-парадигмен[1] програмен език, който е залегнал в основата на математическия софтуер Mathematica и на облака Wolfram Programming Cloud, създадени от компанията Волфрам Рисърч, с основател и главен изпълнителен директор е Стефан Волфрам. Проектиран е да бъде максимално общ, но набляга на символното смятане, функционалното програмиране и логическото програмиране. Може да работи с произволни структури и данни[2]
Езикът обхваща много области, повечето специализирани. В него са включени вградени функции за генериране и изпълнение на Тюринг машини, за създаване на графики и звуци, за анализ на 3D модели, за операции с матрици и за решаване на диференциални уравнения. Разполага с обширна документация и специално създадена Волфрам Програминг Лаб (на английски: Wolfram Programming Lab) за лесен достъп при изучаване.
От 2013 г. той се предоставя в пакет със системния софтуер, инсталиран на всеки едноплатков компютър Raspberry Pi, разпространяван в британските училища с цел популяризиране на обучението по основи на компютърните науки. Едноплатковият модул Edison, представен през 2014 г. от Intel, също включва езика в софтуера си. Има планове езикът да бъде интегриран и в платформата за разработка на игри Unity.
История
[редактиране | редактиране на кода]Стивън Волфрам е британски учен, известен с работата си в областта на физиката на елементарните частици и клетъчните автомати, компютърните науки и математиката. Той е автор на книгата „A New Kind of Science“. Създател е на приложния софтуер Mathematica и на Wolfram Alpha, отговаряща машина, разработена през 2009 г. Това е онлайн услуга, която дава отговори на въпроси чрез пряко изчисляване на структурирана информация, както и чрез предоставяне на списък от уеб страници, които могат да съдържат отговора. Точно както търсеща машина тя извежда списък с резултати[3].
Въпреки че програмният език съществува от над 25 години, сегашното му наименование е официално обявено едва през юни 2014 г.[4] Преди това вътрешно се използват няколко имена, като „M“ и „Wolfram Language“. Обсъждани са и други възможности, сред тях „Lingua“ и „Express“, а след използването му в „Mathematica“ той често е наричан „Mathematica“[2].
Характеристики
[редактиране | редактиране на кода]За разлика от други езици за програмиране желанието на създателите на езика е да вградят в него колкото се може повече възможности и знания за реалния свят, така че да получат кохерентна структура с висока степен на автоматизация. Това е постигнато с повече от 5000 вградени функции и структури, автоматизиращи изчисленията[2].
Самият Волфрам нарича езика си средство за „програмиране, основано на знания“ и се стреми да го направи, заедно със софтуерната си философия, достъпен за повече хора, включително начинаещи студенти и деца.[5] Затова решава да създаде версия на езика и инструментите за развитието му като „свободна облачна услуга“. За тази цел публикува книга – „An Elementary Introduction to the Wolfram Language“, която е безплатна за четене онлайн или може да се поръча в печатна версия от уебсайта на компанията или от Amazon. Волфрам казва: „Моята голяма цел е да направя колкото може по-широко достъпно това, което може да се направи с изчисления.“ Със своите открития той се надява един ден „случайни деца да могат да създават такива неща, каквито в миналото можеха да постигнат само учените с най-сложните инструменти“.
Основните принципи, залегнали в езика, са:[6]
- Научно програмиране, основано на максимум знания: философията на езика Волфрам е да съдържа възможно най-много знания за алгоритмите и за света.
- Мета алгоритми: възможно най-голяма автоматизация, за да могат програмистите да се концентрират да определят какво искат да направят, а езикът автоматично да открие как да го направи.
- Кохерентност: езикът поддържа обединена и елегантна структура, където всичко си пасва, постигнато чрез силен фокус към принципите на дизайна на ядрото, през широк обхват от функционалности
- Символно представяне: всичко (данни, формули, графики, код, документи) се представя като символични изрази, осигурявайки възможност за гъвкаво програмиране
- Модел на света: езикът Волфрам има широкоспектърен вграден модел на света чрез Wolfram Alpha и знае как да направи не просто изчисления за абстрактни данни, единици, дати, геолокация, но също и директно да ги свърже с обекти от реалния свят.
- Естествено разбиране на езика (на английски: Natural language understanding, NLU, част от обработката на естествен език): позволява включване на ежедневен език в кода.
- Универсално внедряване: Разполагане на езика на всякакви платформи – десктоп, облак, мобилни приложения, вграден софтуер.
- Позволява формат на изчисляеми документи (на английски: Computable Document Format, CDF): документите стават част от езика. и дават възможност за смесване на изпълним код с текст, графики, интерфейс и др.
- Вградена свързаност с широк спектър от езици, услуги, програми и устройства с помощта на Wolfram Cloud.
- Интерактивност: Средата за разработка на езика е напълно интерактивна и позволява да се стартира код, докато се пише.
- Напълно мащабируем: предоставя възможност за мащабиране от програми с един ред до програми с милиони редове, и от самостоятелно използване до широко публично разгръщане.
- Мултипарадигмен, сливащ език: чрез уникалния си символичен характер, езикът слива много програмни парадигми, познати и нови.
- 25-годишна история на последователност и визия: ядрото на езика поддържа конкурентоспособен код повече от 25 години.
Разпространение
[редактиране | редактиране на кода]През 2012 г. във Великобритания започва кампания по популяризиране на усвояването на компютърните науки в училищата. За тази цел се произвежда евтиният компютър Raspberry Pi, а в неговия пакет със софтуер е включена Mathematica и езикът Волфрам.
Raspberry Pi са малки компютри с размерите на кредитна карта, които работят с версия на Linux, но не са много мощни: Волфрам предупреждава, че графичният интерфейс на Mathematica може да бъде „бавен“, но интерфейсът с команден ред е бърз и машината е все още значително по-бърза от тези, на които Mathematica стартира преди 25 години. За сметка на това е надежден: „Raspberry Pi ... ме насърчи да опитам нов начин да свържа реалния свят и компютърния. На първо място е лесно да свързвате устройства към Pi, а Pi е достатъчно малък и евтин, за да можете да го поставите почти навсякъде. И ако стартирате на него програма на Волфрам, той е достатъчно надежден, за да може да се очаква тя да върви вечно, като анализира и качва данни, контролира автономна система, анализира и маршрутизира трафика, или нещо друго“.
Въпреки предимствата му, популярността на езика Волфрам все още изостава в сравнение със стандартните езици за програмиране.
Източници
[редактиране | редактиране на кода]- ↑ т.е. предоставя повече от един подход за решение на даден проблем
- ↑ а б в What Should We Call the Language of Mathematica?—Stephen Wolfram Blog // Blog.stephenwolfram.com, 12 февруари 2013. Посетен на 5 ноември 2015.
- ↑ Johnson, Bobbie. British search engine 'could rival Google' // The Guardian. 9 март 2009. Посетен на 9 март 2009.
- ↑ Slate's article Stephen Wolfram's New Programming Language: He Can Make The World Computable, 6 март 2014. Посетен на 14 май 2014.
- ↑ Stephen Wolfram Aims to Democratize His Software by Steve Lohr
- ↑ Принципи и концепции
Външни препратки
[редактиране | редактиране на кода]- Stephen Wolfram Aims to Democratize His Software by Steve Lohr, The New York Times, December 14, 2015
- Сайтът на Волфрам
- Елементарно представяне на езикът Волфрам
- Публично достъпни ресурси за език Волфрам
- Списък на open-source имплементации на езика „Математика“
- Mathematica безплатно за Raspberry pi компютри