Когда был создан язык программирования?
История языков программирования
С середины 50-х гг. XX в. начали создавать первые языки программирования высокого уровня (high-level programming languages). Эти языки не были привязаны к определенному типу ЭВМ (машинонезависимы). Для каждого из них были разработаны собственные компиляторы. Компиляция — трансляция программы, составленной на исходном языке высокого уровня, в эквивалентную программу на низкоуровневом языке, близком машинному коду (абсолютный код, объектный модуль, иногда язык ассемблера).
Лого (язык программирования)
Ло́го () — язык программирования высокого уровня, разработанный в 1967 году , Сеймуром Пейпертом и в образовательных целях для обучения детей дошкольного и младшего школьного возраста основным концепциям программирования (рекурсии, расширяемости и пр.).
Язык программирования
В 1990-х годах в связи с активным развитием Интернета распространение получили языки, позволяющие создавать сценарии для веб-страниц — главным образом Perl, развившийся из скриптового инструмента для Unix-систем, и Java. Возрастала также и популярность технологий виртуализации. Эти изменения, однако, также не представляли собой фундаментальных новаций, являясь скорее совершенствованием уже существовавших парадигм и языков (в последнем случае — главным образом семейства Си).
Программное обеспечение
Первая теория, касающаяся программного обеспечения, была предложена английским математиком Аланом Тьюрингом в 1936 году в эссе «On computable numbers with an application to the Entscheidungsproblem» («О вычислимых числах с приложением к проблеме разрешения»). Он создал так называемую машину Тьюринга, математическую модель абстрактной машины, способной выполнять последовательности рудиментарных операций, которые переводят машину из одного фиксированного состояния в другое. Главная идея заключалась в математическом доказательстве факта, что любое наперёд заданное состояние системы может быть всегда достигнуто последовательным выполнением конечного набора элементарных команд (программы) из фиксированного набора команд.
Программное обеспечение
Собственно сам термин «программное обеспечение» вошёл в широкий обиход с начала 1960-х годов, когда стало актуальным разграничение команд, управляющих компьютером, и его физических компонентов — аппаратного обеспечения. Тогда же и началось становление индустрии программного обеспечения, как самостоятельной отрасли. Первой компанией по разработке ПО стала основанная в 1959 году и с начальным капиталом в 100 долларов. Первыми клиентами CSC и появившихся вслед за нею софтверных компаний были сверхкрупные корпорации и государственные организации, вроде NASA, и фирма продолжала работать на рынке заказного ПО, как и другие первые программистские частные стартапы, такие как (CUC).
Программирование
19 июля 1843 года — Чарлз Бэббидж разработал (но не смог её построить) «Аналитическую машину» — первое программируемое вычислительное устройство.
Функциональное программирование
Кеннет Е. Айверсон разработал язык APL в начале шестидесятых, документировав его в своей книге A Programming Language (ISBN 978-0-471-43014-8). APL оказал значительное влияние на язык , созданный Джоном Бэкусом. В начале девяностых Айверсон и создали преемника APL — язык программирования J. В середине девяностых , ранее работавший с Айверсоном, создал язык K, который впоследствии использовался в финансовой индустрии на коммерческой основе.
История языков программирования
Коротко, это достижение в области программирования было очень велико. Теперь программирование можно было разбить на классы и тестировать не всю программу, состоящую из 10 000 строк кода, а разбить программу на 100 классов, и тестировать каждый класс. Это существенно облегчило написание программного продукта.
Поколения языков программирования
Языки программирования принято делить на пять поколений.
Теория языков программирования
В 1969 году Тони Хоар разработал логику Хоара — первый пример аксиоматической семантики для языков программирования, обеспечивающей формальную верификацию программного кода. В 1970 году Даной Скоттом разработана денотационная семантика.
История языков программирования
Но сложность разработки в нём больших программных комплексов привела к появлению языков третьего поколения — языков высокого уровня. Но на этом жизнь ассемблера не закончилась, он жив и по сей день и не только жив, но и пользуется популярностью в узких кругах. Сейчас его используют в написании отдельных фрагментов программ или иногда в написании самих программ. Примеров может быть много, но самые яркие это использование ассемблера в написании драйверов, игр и загрузчиков ОС. Не стоит забывать, что у хакеров этот язык так же пользуется популярностью, да ещё какой! Но что же им так нравится в нём? Конечно же, то, что скорость работы полученной программы значительно выше скорости программы написанной на языке программирования высокого уровня. Это объясняется тем, что получившийся размер программы очень мал. А как же разработчики антивирусных программ? Они тоже не лыком шиты и так же используют ассемблер в некоторых модулях своих программ, что так же обеспечивает их быстродействие. А если бы не ассемблер некоторые программы загружались бы около часа! Так что ассемблер воистину вечный язык и ещё много, много лет он будет служить человечеству!
История языков программирования
На заре компьютеризации (в начале 1950-х г.г.), машинный язык был единственным языком, большего человек к тому времени не придумал. Языки низкого уровня мало похожи на нормальный, привычный человеку язык. Большие, громоздкие программы на таких языках пишутся редко. Зато если программа будет написана на таком языке, то она будет работать быстро, занимая маленький объем и допуская минимальное количество ошибок. Чем ниже и ближе к машинному уровень языка, тем меньше и конкретнее задачи, которые ставятся перед каждой командой.
Форт (язык программирования)
С 1971 года Мур работал в , участвуя в разработке программ сбора и обработки получаемых радиотелескопом данных. Именно тогда появилась первая реализация языка Форт. В этой работе также участвовала сотрудница Мура , которую можно считать вторым в мире форт-программистом.
История языков программирования
Середина 50-х гг. характеризуется стремительным прогрессом в области программирования. Роль программирования в машинных кодах стала уменьшаться, стали появляться языки программировании нового типа, выступающие в роли посредника между машинами и программистами. Наступило время второго и третьего поколений языков программирования.
C Sharp
C# (произносится "си шарп") — объектно-ориентированный язык программирования. Разработан в 1998—2001 годах группой инженеров компании Microsoft под руководством Андерса Хейлсберга и Скотта Вильтаумота как язык разработки приложений для платформы Microsoft .NET Framework. Впоследствии был стандартизирован как ECMA-334 и ISO/IEC 23270.
Императивное программирование
В 1980-х годах возрос интерес к объектно-ориентированному программированию (ООП). В 1980 году сотрудники исследовательского центра Xerox PARC на основе языка Smalltalk, разработанного Аланом Кэем в 1969 году, создали язык Smalltalk-80. Бьерн Страуструп на основе языка C и по образу и подобию языка Simula (предположительно, первого в мире ООП-языка, разработанного ещё в 1960-х годах) разработал язык C++. Первая реализация C++ была создана в 1985 году. В 1987 году Ларри Уолл выпустил язык Perl и интерпретатор для него. В 1990 году Гвидо ван Россум выпустил язык Python. В 1994 году в фирме Sun Microsystems был разработан язык Java. В 1995 году Расмус Лердорф разработал язык PHP. Язык Ruby был выпущен в 1995 году. Язык C# был выпущен в 2002 году вместе с программной платформой (фреймворком) .NET Framework, поддерживающей несколько языков.
Short Code
История языков программирования
Обобщённое программирование
Обобщённое программирование () — парадигма программирования, заключающаяся в таком описании данных и алгоритмов, которое можно применять к различным типам данных, не меняя само это описание. В том или ином виде поддерживается разными языками программирования. Возможности обобщённого программирования впервые появились в виде дженериков (обобщённых функций) в 1970-х годах в языках Клу и Ада, затем в виде параметрического полиморфизма в ML и его потомках, а затем во многих объектно-ориентированных языках, таких как C++, Java, Object Pascal, D, Eiffel, языках для платформы .NET и других.
TeX
Он планировал завершить систему во время своего творческого отпуска 1978 года, но финальная версия языка появилась на свет лишь в 1979 году. Летом 1978 года, когда Кнут писал первую версию TeX’а, в Стэнфорде находился . Осенью того же года он вернулся в MIT и переписал систему ввода-вывода TeX под операционную систему . Первая версия TeX’а была написана на языке программирования и работала на PDP-10 под операционной системой . Для следующих версий Кнут изобрёл концепцию «грамотного программирования» (), способ получения совместимого исходного кода и документации к нему (конечно, в виде текста на TeX’е) из одного и того же оригинального файла. Этот язык был назван и производил программы на Паскале.
История языков программирования
На протяжении 1950-х годов запросы на разработку программного обеспечения возросли и программы стали очень большими. Приходилось писать очень много кода, хотя обеспечение и было весьма простым: по тем временам дизайн рабочего стола был проще нынешнего, программы работали с элементарными вещами, а компьютер только ещё начинал победно шествовать. Однако программы запутывались всё больше, их структура усложнилась, потому что всё время развивалась компьютерная техника. Тогда стали пользоваться специальными программами-сборщиками программ из маленьких кусочков кодов — ассемблерами. Начался новый этап развития.
История языков программирования
К концу 1960-х годов в связи с ростом сложности программ и дальнейшим развитием программных средств возникла необходимость увеличить производительность труда программистов, что привело к разработке структурного программирования. Основоположником данной методологии считается Эдсгер Дейкстра, который в 1968 году опубликовал своё знаменитое письмо «Оператор Goto считается вредным», а также описал основные принципы структурного программирования. С развитием структурного программирования следующим достижением были процедуры и функции. То есть, если есть задача, которая выполняется несколько раз, то её можно объявить как функцию или как процедуру и в выполнении программы просто вызывать её. Общий код программы в данном случае становится меньше. Это способствовало созданию модульных программ.
Императивное программирование
Первыми императивными языками были машинные инструкции (коды) — команды, готовые к исполнению компьютером сразу (без каких-либо преобразований). В дальнейшем были созданы ассемблеры, и программы стали записывать на языках ассемблеров. Ассемблер — компьютерная программа, предназначенная для преобразования машинных инструкций, записанных в виде текста на языке, понятном человеку (языке ассемблера), в машинные инструкции в виде, понятном компьютеру (машинный код). Одной инструкции на языке ассемблера соответствовала одна инструкция на машинном языке. Разные компьютеры поддерживали разные наборы инструкций. Программы, записанные для одного компьютера, приходилось заново переписывать для переноса на другой компьютер. Были созданы языки программирования высокого уровня и компиляторы — программы, преобразующие текст с языка программирования на язык машины (машинный код). Одна инструкция языка высокого уровня соответствовала одной или нескольким инструкциям языка машины, и для разных машин эти инструкции были разными. Первым распространённым высокоуровневым языком программирования, получившим применения на практике, стал язык Fortran, разработанный Джоном Бэкусом в 1954 году. Fortran является компилируемым языком программирования, позволяет использовать именованные переменные, составные выражения, подпрограммы и многие другие элементы, распространённые в императивных языках. Для упрощения выражения математических алгоритмов в конце 1950‑х годов был разработан язык Algol. В дальнейшем Algol послужил базой для написания операционных систем для некоторых моделей компьютеров. Языки COBOL (1960 год) и Basic (1964 год) стали первыми языками, разработчики которых пытались сделать языки похожими на английский язык. В 1970-х годах Никлаус Вирт разработал язык Pascal. Денис Ритчи создал язык C. В 1978 году команда разработчиков из фирмы Honeywell начала разработку языка Ada, через четыре года опубликовала требования для его работы; спецификация языка увидела свет в 1983 году, была обновлена в 1995 и 2005-2006 годах.
K (язык программирования)
Изначально язык программирования K был разработан Артуром Уитни, Kx Systems, но его реализация от Kx проприетарная и платная. Впрочем в настоящее время 32-разрядная версия Kdb+/q (и языка K) для windows, linux или MacOS X бесплатно доступна для некоммерческого применения, или прототипирования коммерческих систем.
Язык программирования
К 1970-м годам сложность программ выросла настолько, что превысила способность программистов управляться с ними, и это привело к огромным убыткам и застою в развитии информационных технологий. Ответом на эту проблему стало появление массы языков высокого уровня, предлагающих самые разные способы управления сложностью (подробнее см. парадигма программирования и языки для программирования в мелком и крупном масштабе). Программы на языках «высокого уровня» гораздо легче модифицируются и совсем легко переносятся с компьютера на компьютер. На практике, наибольшее распространение получили языки "третьего" поколения, которые лишь "претендуют" на звание «высокоуровневых», но реально предоставляют лишь те «высокоуровневые» конструкции, что находят однозначное соответствие инструкциям в машине фон-Неймана.
C++
В 1985 году вышло первое издание «Языка программирования C++», обеспечивающее первое описание этого языка, что было чрезвычайно важно из-за отсутствия официального стандарта. В 1989 году состоялся выход C++ версии 2.0. Его новые возможности включали множественное наследование, абстрактные классы, статические функции-члены, функции-константы и защищённые члены. В 1990 году вышло «Комментированное справочное руководство по C++», положенное впоследствии в основу стандарта. Последние обновления включали шаблоны, исключения, пространства имён, новые способы приведения типов и булевский тип.
Swift (язык программирования)
Старший вице-президент по разработке программного обеспечения Apple Крейг Федериги во время анонса этого продукта заявил, что язык программирования Swift был заложен ещё в платформе NeXT (ОС NeXTSTEP выпускалась в 1989—1995 годах), которая стала основой для современной macOS, а затем и iOS.
Red (язык программирования)
Red — императивный и функциональный язык представленный в 2011 году французским программистом Ненадом Ракоцевичем. Его синтаксис унаследован от интерпретируемого языка программирования REBOL, представленного в 1997 году. Создание Red направлено на преодоление некоторых ограничений языка REBOL, в результате чего Red является, по словам создателя языка, «языком полного стека». Red может использоваться как для высокоуровневого предметно-ориентированного программирования и создания графических интерфейсов, так и для низкоуровневого программирования операционных систем и драйверов.
E (язык программирования)
E — объектно-ориентированный язык программирования для надежных распределенных вычислений, разработанный Марком С. Миллером, Дэном Борнстейном и другими участниками сообщества (среди них был и Дуглас Кроуфорд) в 1997.
Паскаль (язык программирования)
Язык был создан Никлаусом Виртом в 1968—1969 годах после его участия в работе комитета разработки стандарта языка Алгол-68. Язык назван в честь французского математика, физика, литератора и философа Блеза Паскаля, который создал одну из первых в мире механических машин, складывающую два числа. Первая публикация Вирта о языке датирована 1970 годом; представляя язык, автор в качестве цели его создания указывал построение небольшого и эффективного языка, способствующего хорошему стилю программирования, использующему структурное программирование и структурированные данные.
История языков программирования
К 1960 году существовали версии Fortran для компьютеров IBM 709, 650, 1620, 7090. Его большая популярность побуждала конкурирующих изготовителей компьютеров создавать компиляторы Fortran для своих компьютеров. Таким образом, уже к 1963 существовало более 40 компиляторов для разных платформ. Именно поэтому Fortran считают первым широко используемым языком программирования.
Язык программирования
Можно сказать, что первые языки программирования возникали ещё до появления современных электронных вычислительных машин: уже в XIX веке были изобретены устройства, которые можно с долей условности назвать программируемыми — к примеру, музыкальная шкатулка (и позднее механическое пианино) посредством металлического цилиндра и Жаккардовый ткацкий станок (1804) посредством картонных карт. Для управления ими использовались наборы инструкций, которые в рамках современной классификации можно считать прототипами предметно-ориентированных языков программирования. Значимым можно считать «язык», на котором леди Ада Августа графиня Лавлейс в 1842 году написала программу для вычисления чисел Бернулли для Аналитической машины Чарльза Бэббиджа, ставшей бы, в случае реализации, первым компьютером в мире, хотя и механическим — с паровым двигателем.
История языков программирования
Как показала в дальнейшем практика общения с компьютером, такой язык громоздок и неудобен. При пользовании им легко допустить ошибку, записав не в той последовательности 1 или 0. Программу очень трудно контролировать. Кроме того, при программировании в машинных кодах надо хорошо знать внутреннюю структуру ЭВМ, принцип работы каждого блока. И самое плохое в таком языке, что программы на данном языке — очень длинные последовательности единиц и нулей являются машинно зависимыми, то есть для каждой ЭВМ необходимо было составлять свою программу, а так же программирование в машинных кодах требует от программиста много времени, труда, повышенного внимания.
Программирование
По выражению одного из основателя языков программирования Никлауса Вирта «Программы = алгоритмы + структуры данных».
Scala (язык программирования)
Язык был создан в 2001—2004 годах в Лаборатории методов программирования EPFL. Он стал результатом исследований, направленных на разработку улучшенной языковой поддержки компонентного программного обеспечения. За основу при разработке языка были взяты две идеи:
Язык программирования
Первые три поколения языков формируют императивную парадигму программирования, а последующие — декларативную. Термин «"императив"» означает «приказной порядок», то есть программирование посредством "пошагового инструктирования" машины, или детального указания уже придуманного программистом "способа реализации" технического задания. Термин «"декларатив"» означает «описание», то есть программирование посредством предоставления "формализации" технического задания в виде, пригодном для , с предоставлением свободы выбора транслятору языка. Императивные языки нацелены на описание того, "как" получить результат, тогда как языки более высокого уровня нацелены на описание того, "что" требуется в результате. Поэтому первые называют "как"-языками (или языками, ориентированными на машину), а вторые — "что"-языками (или языками, ориентированными на человека). Для множества задач полностью автоматическое порождение по-настоящему эффективной реализации алгоритмически неразрешимо, так что на практике даже на "что"-языках нередко используются определённые алгоритмические ухищрения. Однако, существуют методы получения эффективных реализаций из основанных на определении (реализаций «в лоб») — такие как изобретённая в СССР суперкомпиляция.
Программное обеспечение
Первыми самостоятельно выпущенными программными продуктами, не поставляемыми в комплекте с компьютерным оборудованием, были выпущенный фирмой Applied Data Research в 1965 году генератор компьютерной документации AUTOFLOW, автоматически рисующий блок-схемы, и транслятор языка программирования , разработанный в 1960—1967 годах в Informatics, Inc. Становление рынка корпоративного программного обеспечения тесно связано с появлением семейства компьютеров IBM System/360. Достаточно массовые, относительно недорогие вычислительные машины, совместимые друг с другом на уровне программного кода, открыли дорогу тиражируемому программному обеспечению.
Си (язык программирования)
В 1983 году Американский национальный институт стандартов (ANSI) сформировал комитет для разработки стандартной спецификации Си. По окончании этого долгого и сложного процесса в 1989 году он был наконец утверждён как «Язык программирования Си» "ANSI X3.159-1989". Эту версию языка принято называть "ANSI C" или C89. В 1990 году стандарт ANSI C был принят с небольшими изменениями Международной организацией по стандартизации (ISO) как "ISO/IEC 9899:1990".
Программист
Первым программируемым устройством принято считать жаккардовый ткацкий станок, построенный в 1804 году Жозефом Мари Жаккаром, который произвёл революцию в ткацкой промышленности, предоставив возможность программировать узоры на тканях при помощи перфокарт.
История языков программирования
Прогресс компьютерных технологий определил процесс появления новых разнообразных знаковых систем для записи алгоритмов языков программирования. Смысл появления такого языка — упрощение программного кода.
Учебный язык программирования
Язык Logo, появившийся на свет между Бейсиком и Паскалем, стал первым языком программирования, изначально предназначенным для обучения "детей". Этот язык можно рассматривать как диалект Лиспа — языка, с которого началось функциональное программирование. Хотя этот язык более известен своей черепашьей графикой и рассматривается как первый из графических исполнителей, но такие черты Лиспа, как управление последовательностью действий через рекурсию и списки в качестве основной структуры данных, также остаются свойствами этого (мультипарадигмального по своей сути) языка.
Форт (язык программирования)
Язык Форт был создан Чарльзом X. Муром в конце 1960-х — начале 1970-х годов. Мур назвал свой язык "Fourth", считая, что это будет язык для ЭВМ четвёртого () поколения. Но так как он работал на машине , которая допускала имена, составленные не более чем из пяти прописных букв, название было преобразовано в "FORTH" ( — вперёд). Впрочем, первые эксперименты Мура по созданию простого интерпретатора, облегчающего написание программ управления астрономическим оборудованием, относятся ещё к концу 1950-х годов.
Oz (язык программирования)
Разработку языка программирования Oz начал в 1991 году профессор Gert Smolka со своими студентами из лаборатории систем программирования Лувенского католического университета в Бельгии. В 1996 году к процессу разработки подключились Seif Haridi и Peter Van Roy из Шведского института информатики (Swedish Institute of Computer Science), которые использовали этот язык в своём классическом учебнике Concepts, Techniques, and Models of Computer Programming. С 1999 до 2005 года язык развивался под руководством международной научно-исследовательской группы (Mozart Consortium), состоящей из трёх университетов: Саарский университет, Шведский институт информатики (Swedish Institute of Computer Science) и Лувенский католический университет.
Кобол
Кобо́л ("COBOL", "COmmon Business Oriented Language") — один из старейших языков программирования (первая версия выпущена в 1959 году), предназначенный, в первую очередь, для разработки бизнес-приложений. Руководителем проекта по созданию Кобола была Грейс Хоппер («бабушка Кобола»). Практически с самого своего рождения Кобол является ANSI-стандартизованным языком программирования.
Планкалкюль
Планкалкюль ( — исчисление планов), — первый в мире высокоуровневый язык программирования, созданный немецким инженером Конрадом Цузе в 1943—1945 году и впервые опубликованный в 1948 году. В переводе на русский это название соответствует выражению «планирующее исчисление».
AMPL (язык программирования)
AMPL (аббревиатура от  — язык моделирования для математического программирования) — язык программирования высокого уровня, разработанный в Bell Laboratories в 1985 году для того, чтобы описывать и решать сложные задачи оптимизации и теории расписаний. AMPL не решает задачи непосредственно, а вызывает соответствующие внешние «решатели» (такие как CPLEX, MINOS, IPOPT, SNOPT и другие) для получения решения.
Orwell (язык программирования)
Orwell — это небольшой функциональный язык программирования с ленивыми вычислениями, реализованный главным образом Мартином Расковским и впервые выпущенный Филиппом Уодлером в 1984 году, когда он работал научным сотрудником в группе по программированию, входящей в состав вычислительной лаборатории Оксфордского университета. Разработанный как бесплатная альтернатива Miranda, он был предшественником Haskell и был одним из первых языков программирования, который поддерживал понимание списков и сопоставление с образцом.
История языков программирования
Ассемблер — язык программирования низкого уровня. Язык программирования низкого уровня — язык программирования, который ориентирован на конкретный тип процессора и учитывает его особенности. В данном случае «низкий уровень» не значит «плохой». Имеется в виду, что операторы языка близки к машинному коду и ориентированы на конкретные команды процессора. Появление языка ассемблера значительно облегчило жизнь программистов, так как теперь вместо рябящих в глазах нулей и единиц, они могли писать программу командами, состоящими из символов приближенных к обычному языку. Для того времени этот язык был новшеством и пользовался популярностью так как позволял писать программы небольшого размера, что при тех машинах критерий значительный.
Erlang
В середине 1980-х в компьютерной лаборатории компании Ericsson исследовали применимость существовавших на тот момент языков программирования для программного обеспечения телекоммуникационных систем. Джо Армстронг (Joe Armstrong), Роберт Вирдинг (Robert Virding) и Майк Вильямс (Mike Williams) под руководством Бьярне Деккера (Bjarne Däcker), написав прототипы программ на различных языках, пришли к выводу, что ни один из этих языков не имел полного набора возможностей, необходимых в области телекоммуникационных систем. В результате был создан новый язык программирования — Erlang. Своё название язык, вероятно, получил в честь датского математика и инженера Агнера Эрланга, основателя научного направления по изучению сетевого трафика в телекоммуникационных системах. По другой версии, название языка изначально было сокращением от «ericsson language».
Теория языков программирования
Выпуск языка Миранда в 1985 году подогрел академический интерес к ленивым чистым функциональным языкам программирования, в результате был создан комитет для определения открытого стандарта такого языка, в итоге в 1990 году вышел стандарт версии 1.0 языка Haskell.
Markdown
Первоначально создан в 2004 году и Аароном Шварцем. Многие идеи языка были позаимствованы из существующих соглашений по разметке текста в электронных письмах. Реализации языка Markdown преобразуют текст в формате Markdown в валидный, правильно построенный XHTML и заменяют левые угловые скобки («амперсанды («&») на соответствующие коды сущностей. Первой реализацией Markdown стала написанная Грубером реализация на Perl, однако спустя некоторое время появилось множество реализаций от сторонних разработчиков (см. ниже). Реализация на Perl распространяется по лицензии типа BSD. Реализации Markdown на различных языках программирования включены (или доступны в качестве плагина) во многие системы управления содержимым.
Magik (язык программирования)
Magik — объектно-ориентированный язык программирования, который поддерживает множественное наследование, полиморфизм и динамически типизированный. Он был разработан в 1989 году, реализован Артуром Чансом, из Smallworld Systems Ltd, в рамках Smallworld географической информационной системы (ГИС). Мэджик был введён в 1990 году и был улучшен и обновлен в течение многих лет. Его текущая версия 5.1. После приобретения SmallWorld в 2000 году, Мэджик обеспечивается GE Energy, в рамках своей Smallworld технологической платформы. В июле 2012 года разработчики Magik объявили, что они находятся в процессе портирования Magik на виртуальной машине Java. Успешное перенесение было подтверждено корпорацией Oracle в ноябре того же года.
Ада (язык программирования)
В 1983 году язык был официально стандартизован ANSI. Стандарт языка ANSI/MIL-STD-1815-A-1983 был утверждён 17 февраля 1983 года. Министерство обороны США сделало наименование «Ada» зарегистрированной торговой маркой, запретив выпускать трансляторы языка, не прошедшие официальную процедуру тестирования на соответствие стандартам. Процедура состояла в прогоне через тестируемый компилятор большого количества (более 1000) тестовых программ (так называемый комплект ACVC), для каждой из которых был однозначно определён результат тестирования: либо удачная компиляция, либо выдача вполне конкретного сообщения об ошибке. Тестирование проводилось по принципу «всё или ничего» — при ошибке в обработке хотя бы одного тестового примера компилятор считался не прошедшим тест, причём тестирование было действительно только на той аппаратной и программной платформе, на которой оно проводилось. Таким образом была в зародыше подавлена возможность образования «версий» или «диалектов» языка Ада.
Объектно-ориентированное программирование
Первым языком программирования, в котором были предложены основные понятия, впоследствии сложившиеся в парадигму, была Симула, но термин «объектная ориентированность» не использовался в контексте использования этого языка. В момент его появления в 1967 году в нём были предложены революционные идеи: объекты, классы, виртуальные методы и др., однако это всё не было воспринято современниками как нечто грандиозное. Фактически, Симула была «Алголом с классами», упрощающим выражение в процедурном программировании многих сложных концепций. Понятие класса в Симуле может быть полностью определено через композицию конструкций Алгола (то есть класс в Симуле — это нечто сложное, описываемое посредством примитивов).
INTERCAL
INTERCAL — один из старейших эзотерических языков программирования. Был создан в 1972 году студентами Доном Вудсом и Джеймсом Лайоном как пародия на существующие языки программирования и как «гимнастика для ума»; как утверждают создатели, его название означает «язык программирования с непроизносимой аббревиатурой» ().
История языков программирования
COBOL — язык очень старый и в свое время использовался крайне активно, поэтому существует множество реализаций и диалектов. Для языка был утвержден ряд стандартов: в 1968, 1974, 1985 и 2002 годах. Последний стандарт добавил в язык поддержку объектно-ориентированной парадигмы.
Поколения языков программирования
К первому поколению (, 1GL) относят машинные языки — языки программирования на уровне команд процессора конкретной машины. Для программирования не использовался транслятор, команды программы вводились непосредственно в машинном коде переключателями на передней панели машины. Такие языки были хороши для детального понимания функционирования конкретной машины, но сложны для изучения и решения прикладных задач.
Наследование (программирование)
В ряде языков программирования, все классы, — явно или неявно, — наследуются от некого базового класса. «Smalltalk» был одним из первых языков, в которых использовалась эта концепция. К таким языкам также относятся: «Objective-C» (класс codice_1), «Perl» (codice_2), «Eiffel» (codice_3), «Java» (codice_4), «C#» (codice_5), «Delphi» (codice_6), «Scala» (codice_7).
Clarion (язык программирования)
Язык программирования Clarion был разработан Брюсом Баррингтоном в 1984 г. В своей статье он так описывает историю его создания: «Как это часто бывает, я просто пытался доставить себе удовольствие. Я купил свой первый персональный компьютер, смотрел на него и хотел писать программы для него. Это моя работа. Моим стимулом в работе было убеждение, что программирование должно быть проще, что языки программирования должны облегчать чтение и написание программ и что низкая производительность, связанная с процессом разработки программ, коренится в неадекватных и слабо спроектированных инструментальных средствах программирования». Первоначально проект создавался в рамках компании "HBO & Company", но затем был выкуплен McKesson Corporation
Логлан
С развитием компьютерных технологий и информатики появилась идея сделать логлан первым человеческим языком, понятным искусственному интеллекту. К этому моменту его грамматика уже была сильно развита, однако в нём всё же прослеживалось несколько «неоднозначностей». В 1975 году трое американских учёных: Альфред Ахо, Дэвид Стифлер Джонсон и Джеффри Ульман создали алгоритм, позволяющий отыскивать конфликты в языках программирования и удалять их, через два года началась работа над так называемым «проектом машинной грамматики логлана» (). В 1982 году проект был успешно завершён, и логлан, претерпев незначительные изменения, стал первым в мире языком с грамматикой без логических конфликтов. Изменения коснулись в основном системы пунктуации, именно во время проекта появилась произносимая пунктуация (смотрите ниже).
История языков программирования
В дальнейшем появились COBOL (1959), Паскаль (1970), Си (1972).
Алгол
Алгол был разработан в 1958 году на недельной конференции в ETH (Цюрих, Швейцария) как универсальный язык программирования для широкого круга применений, а затем доработан комитетом, созданным Международной федерацией по обработке информации (IFIP). В комитет вошёл ряд ведущих европейских и американских учёных и инженеров-разработчиков языков. Среди них были: Джон Бэкус — один из создателей Фортрана, Джозеф Уэгстен — впоследствии возглавлял комитет по разработке языка Кобол, Джон Маккарти — автор языка Лисп разработанного одновременно с Алголом, Петер Наур — впоследствии доработал «нормальную форму Бэкуса», завершив разработку БНФ, Эдсгер Дейкстра — нидерландский учёный, впоследствии получивший широкую известность как один из создателей структурного программирования и сторонник математического подхода к программированию, будущий лауреат Премии Тьюринга.
Blue (язык программирования)
Blue — система обучения объектно-ориентированному программированию, создана в Сиднейском университете (Австралия). Это одновременно IDE и язык программирования. Blue был разработан и и использовался для обучения с 1997 года. Разработка закончена 1999 году, когда один из принципиальных разработчиков системы Майкл Кёллинг начал применять к IDE вид Java, в результате чего вышел BlueJ.
Языки программирования с ключевыми словами не на английском
Статистика говорит о том, что очень большая доля языков программирования появилась в англоговорящих странах. Не говоря уже о том, что часто языки, разработанные не в англоговорящей стране, используют английский для международной аудитории (например Python, родившийся в Нидерландах) или из-за того, что разрабатываемый язык основан на другом языке программирования с английским синтаксисом (Caml, разработанный во Франции).Многие из них эзотерические.
Ада (язык программирования)
Разработка языка была проведена в рамках международного конкурса, организованного и профинансированного министерством обороны США.
Целью разработки было получение языка программирования, который мог бы стать единым для разработки проектов по заказам военного ведомства, главным образом, для разработки встроенных систем военного назначения и для больших военных компьютеров (на базе процессора iAPX 432 от Intel). Работа началась в 1975 году, с формирования набора требований к языку, который бы в полной мере удовлетворил разработчиков систем указанного типа. Первоначальный список требований, выпущенный под кодовым наименованием «Соломенный», был представлен на рецензию в ряд организаций и фирм, в течение двух лет последовательно уточнялся, в конечном счёте превратившись в итоговый документ под названием «Стальной».
История языков программирования
Новая версия появилась в 1960 г., и ALGOL 60 (с небольшими изменениями, сделанными в 1962 г.) с 60-х и до начала 70-х гг. прошлого века был стандартом академического языка программирования.
Высокоуровневый язык программирования
Первым языком программирования высокого уровня считается компьютерный язык Plankalkül, разработанный немецким инженером Конрадом Цузе ещё в период 1942—1946 годах. Однако транслятора для него не существовало до 2000 года. Первым в мире транслятором языка высокого уровня является ПП (Программирующая Программа), он же ПП-1, успешно испытанный в 1954 году. Транслятор ПП-2 (1955 год, 4-й в мире транслятор) уже был оптимизирующим и содержал собственный загрузчик и отладчик, библиотеку стандартных процедур, а транслятор ПП для ЭВМ Стрела-4 уже содержал и компоновщик (linker) из модулей. Однако, широкое применение высокоуровневых языков началось с возникновением Фортрана и созданием компилятора для этого языка (1957).
История языков программирования
Следующий шаг был сделан в 1954 году, когда была начата разработка языка высокого уровня — Фортран (), компилятор для которого впервые появился в апреле 1957 года. К разработке такого языка подтолкнули новые возможности внедрённого в 1954 году компьютера IBM 704, в котором на аппаратном уровне были реализованы индексная адресация и операции с плавающей точкой. Вслед за ним появились и некоторые другие языки, например: LISP, ALGOL 58, FACT. Языки высокого уровня имитируют естественные языки, используя некоторые слова разговорного языка и общепринятые математические символы. Эти языки более удобны для человека, с помощью них можно писать программы до нескольких тысяч строк длиной. Условными словами можно было, как привычно человеку, гораздо более просто выразить сложную программную операцию из битов. Однако ранние варианты Фортрана значительно уступают поздним концепциям и языкам, использовался он для создания относительно простых по современным меркам программ.
Лого (язык программирования)
Первое научное подтверждение успеха применения Лого как средства обучения было продемонстрировано Идит Харель, студенткой Пейперта, которая использовала Лого для обучения детей программированию и дробям в 1988 году.
Клу
К 1976 году все ключевые элементы языка были реализованы, в 1977 году написан первый компилятор, генерировавший код на ассемблере. Компилятор создавался на самом языке Клу, чем должен был продемонстрировать выразительность средств языка. Построение компилятора, порождающего высокопроизводительные программы, потребовало создания специальной среды выполнения, реализующей сборку мусора, отладку, особые техники отработки исключений и поддержки итераторов. В 1979 году проектирование языка завершено, в 1980 году выпущен полноценный компилятор для PDP-10, несколько позднее реализованы компиляторы для MC68000 и VAX. Трудозатраты на создание языка оценены в 14 человеко-лет.
Центр математики и информатики
С середины 1980-х годов в рамках исследований Центра математики и информатики рождаются несколько языков программирования, в частности ABC, , SMIL и Python, последний из которых получил особенно широкое международное распространение. Вопреки распространённому заблуждению, Питон не был отдельным проектом CWI, его создатель Гвидо ван Россум создал первый прототип во время рождественных каникул 1989 года, потому что не был доволен практичностью ABC (который был официальным проектом CWI).
Программист
Первый работающий программируемый компьютер (1941 год), первые программы для него, а также (с определёнными оговорками) первый язык программирования высокого уровня Планкалкюль создал немецкий инженер Конрад Цузе.
История языков программирования
Первым объектно-ориентированным языком программирования является Симула-67, в котором впервые появились классы. Концепции ООП получили дальнейшее развитие в языке Smalltalk, в котором также были заложены основы систем с оконным управлением. Более поздними примерами объектно-ориентированных языков являются Object Pascal, C++, Java, C# и др.
Теория языков программирования
В 1966 году Коррадо Бёмом и доказана теорема, согласно которой алгоритм может быть преобразован к виду, использующему только три стркутуры управления — последовательной, ветвление и цикл, впоследствии этот результат стал теоретическим фундаментом структурного программирования. В созданном Оле-Йоханом Далем и Кристеном Нюгором в 1967 году языке Симула был разработан, как полагают, первый пример языка объектно-ориентированного программирования и введено понятие сопрограммы. Важной вехой в развитии направления стал курс лекций , выпущенный в 1967 году, где, кроме систематизации знаний по теории языков программирования, глубоко исследовано понятие полиморфизма. Значительный вклад в становление понятия о типах в языках программирования связывают с работой 1969 года , результаты которой вылились обобщённый в алгоритм вывода типов.
История языков программирования
Язык Лисп был предложен Дж. Маккарти в работе в 1960 году и ориентирован на разработку программ для решения задач не численного характера. Английское название этого языка — LISP является аббревиатурой выражения LISt Processing (обработка списков) и хорошо подчеркивает основную область его применения. Понятие «список» оказалось очень емким.
Клу
Систематические работы над созданием языка программирования, реализующего на синтаксическом уровне идеи абстракции данных, начаты весной 1973 года Барбарой Лисков и сотрудником исследовательской лаборатории IBM Стивом Зиллесом (). В сентябре 1973 года вышла их совместная заметка, где описана предварительная версия такого паскалеподобного языка, в ней фигурирует такая отличительная особенность будущего языка как кластеры; на основе этой заметки подготовлен доклад на конференции по сверхвысокоуровневым языкам 1974 года. К концу 1973 года Лисков и Зиллес уже определились с наименованием будущего языка: название «Clu» было выбрано от первых трёх букв английского слова . В качестве оппонента привлекался Остин Хендерсон ().
История языков программирования
В конце 1953 Джон Бэкус предложил начать разработку эффективной альтернативы ассемблеру для программирования на ПК IBM 704. Уже к середине 1954 была закончена черновая спецификация языка Fortran. Первое руководство для Fortran появилось в октябре 1956 вместе с первым компилятором, поставленным в апреле 1957. Компилятор был оптимизирующим, потому что клиенты отказывались использовать язык программирования высокого уровня, который был не в состоянии генерировать код с производительностью ниже, чем у ассемблера.
BCPL
BCPL (Basic Combined Programming Language) — язык программирования, разработанный Мартином Ричардсом в 1966 году в Кембриджском университете. Изначально он предназначался для написания компиляторов для других языков.
Учебный язык программирования
Уче́бный язы́к программи́рования — язык программирования, предназначенный для обучения. В качестве таковых разрабатывались такие языки как BASIC и Паскаль. Из разработанного для обучения языка ABC вырос Python. Популярным языком, разработанным специально для образования является LOGO. Специально для российских школ разработана языковая среда КуМир. Набирает популярность созданный в Массачусетском технологическом институте язык визуального программирования Scratch и тому подобные среды программирования.
Язык программирования
Со времени создания человечество придумало более восьми тысяч языков программирования (включая эзотерические, визуальные и игрушечные)
. Каждый год их число увеличивается. Некоторыми языками умеет пользоваться только небольшое число их собственных разработчиков, другие становятся известны миллионам людей. Профессиональные программисты могут владеть десятком и более разных языков программирования.
Программное обеспечение
В начале 1950-х годов понятие программного обеспечения ещё не сложилось. Так не говорилось о нём ничего в вышедшей в январе 1952 года в журнале Fortune статье «Office Robots», описывавшем компьютеры Univac. Хотя в статье уже рассказывается о компьютере как об универсальном устройстве, процесс программирования в этой статье был анахронически описан как «переключение тумблеров». Однако к середине 50-х годов уже вполне сложилась разработка программного обеспечения на заказ, хотя сам термин «программное обеспечение» ещё не использовался, тогда говорили просто о «"программировании на заказ"» или «"программистском обслуживании"». Первой программной фирмой стала компания System Development Corporation, созданная в 1956 году на базе принадлежащей правительству США фирме RAND Corporation. На этом этапе заказчиками программного обеспечения (уникального и не тиражируемого) были крупные корпорации и государственные структуры, и стоимость в один миллион долларов за программу не была чем-то необычным.
Спецификация языков программирования
Не все основные языки программирования имеют спецификации; языки могут существовать и быть популярными в течение десятилетий без спецификации. Язык может иметь одну или несколько реализаций, поведение которых де-факто является стандартом, но при этом данное поведение не документировано в спецификации. Perl (Perl 5) — известный пример языка без спецификации, тогда как PHP получил спецификацию только в 2014 году, после использования в течение 20 лет.
Си (язык программирования)
Язык был разработан в лабораториях Bell Labs в период с 1969 по 1973 годы. Согласно Ритчи, самый активный период творчества пришёлся на 1972 год. Язык назвали «Си» (C — третья буква английского алфавита), потому что многие его особенности берут начало от старого языка «Би» (B — вторая буква английского алфавита). Существует несколько различных версий происхождения названия языка Би. Кен Томпсон указывает на язык программирования BCPL, однако существует ещё и язык Bon, также созданный им, и названный так в честь его жены Бонни.
Пролог (язык программирования)
Начало истории языка относится к 1970-м годам. Будучи декларативным языком программирования, Пролог воспринимает в качестве программы некоторое описание задачи или баз знаний и сам производит логический вывод, а также поиск решения задач, пользуясь механизмом поиска с возвратом и унификацией.
История языков программирования
Языки программирования принято делить на пять поколений. В первое поколение входят языки, созданные в начале 50-х годов, когда первые компьютеры только появились на свет. Это был первый язык ассемблера, созданный по принципу «одна инструкция — одна строка».
Ада (язык программирования)
После завершения формирования требований был проведён анализ, который показал, что ни один из имеющихся языков программирования не удовлетворяет требованиям в достаточной мере, так что было принято решение разработать новый язык. Конкурс на его создание был объявлен в 1977 году, разработчикам было предложено базироваться на одном из трёх языков: Паскаль, Алгол-68 или ПЛ/1.
История языков программирования
Неизвестно, насколько бы ускорилось развитие программирования, если бы наработки Цузе стали доступны другим учёным в конце 40-х годов, но на практике с развитием компьютерной техники сначала получил распространение машинный язык. С его помощью программист мог задавать команды, оперируя с ячейками памяти, полностью используя возможности машины. Суть этого языка — набор кодов, обязательно понятных процессору, к которому обращаются. Части («слова») этого языка называются инструкциями, каждая из которых представляет собой одно элементарное действие для центрального процессора, как, например, считывание информации из ячейки памяти. Лишь при понимании устройства компьютерного оборудования и знания этих целочисленных кодов можно было непосредственно управлять процессором. Тогда ещё компьютеры были простыми вычислительными машинами, применяемыми для различных математических расчётов. Но они развивались, а использование большинства компьютеров на уровне машинного языка затруднительно, особенно сложным было чтение и модификация подобных программ, что усугублялось использованием абсолютной адресации памяти. Поэтому со временем от использования машинных кодов пришлось отказаться.
История языков программирования
Теперь, когда была нужна эффективная программа, вместо машинных языков использовались
близкие к ним машиноориентированные языки ассемблера. К таковым относились, например, Autocode, с 1954-го г. — IPL (предшественник языка LISP), с 1955-го г. — FLOW-MATIC . Теперь люди стали использовать мнемонические команды взамен машинных команд.
Программирование
19 июля 1843 года — графиня Ада Августа Лавлейс, дочь великого английского поэта Джорджа Байрона, написала первую в истории человечества программу для Аналитической машины. Эта программа решала уравнение Бернулли, выражающее закон сохранения энергии движущейся жидкости. В своей первой и единственной научной работе Ада Лавлейс рассмотрела большое число вопросов. Ряд высказанных ею общих положений (принцип экономии рабочих ячеек памяти, связь рекуррентных формул с циклическими процессами вычислений) сохранили своё принципиальное значение и для современного программирования.
Фортран
Фортра́н () — первый язык программирования высокого уровня, получивший практическое применение, имеющий транслятор и испытавший дальнейшее развитие. Создан в период с 1954 по 1957 год группой программистов под руководством Джона Бэкуса в корпорации IBM. Название Fortran является сокращением от FORmula TRANslator (переводчик формул). Фортран широко используется в первую очередь для научных и инженерных вычислений. Одно из преимуществ современного Фортрана — большое количество написанных на нём программ и библиотек подпрограмм.
Оберон (язык программирования)
По утверждению Вирта, разработчики языка Java за несколько лет до её создания «изучили исходные коды Оберона и, в частности, исходные коды обероновских сборщиков мусора. Потом они испортили Оберон синтаксисом Си и назвали получившееся словом Java». Хотя от устного выступления нельзя требовать абсолютной точности формулировок, но во всяком случае несомненное сходство идеологий Оберона и Java (стремление к минимализму и строгой типизации, ограничение множественного наследования, автоматическое управление памятью) говорит о том, что здесь имеет место определённый консенсус относительно того, какие средства должны составлять ядро современного языка программирования общего назначения. Однако если в Обероне и его прямых наследниках минимализм остаётся во главе угла, разработчики Java пошли по пути экстенсивного наращивания возможностей языка.
Язык программирования
Язык программирования предназначен для написания компьютерных программ, которые представляют собой набор правил, позволяющих компьютеру выполнить тот или иной вычислительный процесс, организовать управление различными объектами, и т. п. Язык программирования отличается от естественных языков тем, что предназначен для управления ЭВМ, в то время как естественные языки используются, прежде всего, для общения людей между собой. Большинство языков программирования использует специальные конструкции для определения и манипулирования структурами данных и управления процессом вычислений.
Программное обеспечение
В 1950-е годы появились первые высокоуровневые языки программирования, Джон Бэкус разработал FORTRAN, а Грейс Хоппер — COBOL. Подобные разработки значительно упростили написание прикладного программного обеспечения, которое писала тогда каждая фирма, приобретающая вычислительную машину.
Теория языков программирования
В 1964 году впервые реализовал вариант λ-исчисления, которое могло быть использовано для моделирования языков программирования (SECD-машина и J-оператор, по существу являющийся разновидностью продолжения). В 1966 году Лэндин разработал абстрактный язык программирования ISWIM.
История языков программирования
С каждым днём наш мир становится более мобильным и информационным. Всё больше и больше компьютеры вступают в нашу повседневную жизнь, и чтобы облегчить наше общение с ними создаётся новое ПО с помощью различных языков программирования.
Spice (язык программирования, 1998)
"Здесь представлена статья о языке программирования, разработанном в 1998 году. Статью о языке программирования для симуляции аналоговых цепей, разработанном в 1972 году, см. здесь SPICE (язык программирования, 1972)."
APL (язык программирования)
Первой попыткой реализации APL был написанный для IBM 7090 на Фортране в 1965 году интерпретатор IVSYS. Однако, в нём ещё не использовался набор APL-символов, они заменялись ключевыми словами на английском языке. Годом позже этот интерпретатор был портирован на IBM/360. В том же 1966 году APL впервые реализован с использованием специализированного терминала на базе и печатающего устройства с соответствующей сменной печатной головкой. В 1967 году IBM выпускает на рынок реализацию APL для , известную как APL\1130.. Вследствие краткости выражений на APL, у этого языка появились немногочисленные, но преданные сторонники, которые гордились тем, что легко разрабатывали сложные программы.
Программная инженерия
Первые языки программирования стали появляться в 1950-х годах, и это был ещё один важный шаг в абстракции. Основные языки, такие как Фортран, Алгол и Кобол, были выпущены в конце 1950-х для решения научных, алгоритмических и бизнес-задач соответственно. Дейкстра написал свою известную статью «Go To Statement Considered Harmful» в 1968 году, а Дэвид Парнас ввёл ключевое понятие модульности и скрытия информации в 1972 году, чтобы помочь программистам справляться со всё более и более сложными программными системами. Системное программное обеспечение для управления аппаратным, названное «операционная система», было представлено компанией Unix в 1969 году. В 1967 году язык Симула ввёл понятие объектно-ориентированной парадигмы программирования.
Сравнение C Sharp и Java
Языки C# и Java появились в разное время. Язык Java был создан задолго до появления C#. Под названием Oak Java был разработан компанией Sun Microsystems в 1990 г., а в 1995 была выпущена первая бета-версия Java. Создание C# было анонсировано в 2000 году, а в 2002 году вышла первая версия платформы .NET, поддерживающей C#. Таким образом, если Java создавался опираясь в большей степени на опыт языков Objective C и C, то для C# такой опорой являлись C++ и сам Java. И, несмотря на своё название, C# оказался ближе к Java, чем к C++.
Теория языков программирования
В 1986 году в рамках работ по созданию языка Eiffel создана парадигма контрактного программирования (Бертран Мейер, 1986).
Теория изучает аспекты языков программирования, насколько это возможно, как совокупности, используя тот или иной конкретный язык как пример, но при этом задействуя средства достаточно высокого уровня общности, для возможности применения результатов к некоторому классу языков. Часто в теоретических разработках создаётся некоторый специализированный, «академический» язык программирования, не пригодный в силу тех или иных причин для практической реализации, но демонстрирующий те или иные теоретические результаты, которые впоследствии применяются к используемым в отрасли языкам. Для теоретических исследований используется инструментарий оснований математики и математической логики, включая теорию множеств, теорию моделей, теорию вычислимости, а также таких абстрактных разделов, как теория категорий, универсальная алгебра, теория графов, и существенно зависит от результатов прикладных направлений, в том числе теории сложности вычислений, теории кодирования.
Язык программирования
Первым практически реализованным языком стал в 1949 году так называемый «Краткий код», в котором операции и переменные кодировались двухсимвольными сочетаниями. Он был разработан в компании Eckert–Mauchly Computer Corporation, выпускавшей UNIVAC-и, созданной одним из сотрудников Тьюринга, Джоном Мокли. Мокли поручил своим сотрудникам разработать транслятор математических формул, однако для 1940-х годов эта цель была слишком амбициозна. Краткий код был реализован с помощью интерпретатора.
Orwell (язык программирования)
Название - дань уважения роману Джорджа Оруэлла «Тысяча девятьсот восемьдесят четвёртый», когда был выпущен язык программирования. В конце 1980-х и 1990-х годах, большинство вычислительных практических заданий для студентов, обучающихся на степень в математике и вычислениях в Оксфордском университете должны были быть завершены с использованием этого языка.