Jump to content

CPL (язык программирования)

CPL
Парадигма Мультипарадигма : процедурный , императивный , структурированный , функциональный
Разработано Кристофер Стрейчи и др.
Впервые появился 1963 год ; 61 год назад ( 1963 )
Под влиянием
АЛГОЛ 60
Под влиянием
БКПЛ

CPL ( комбинированный язык программирования ) — многопарадигмальный язык программирования, разработанный в начале 1960-х годов. Это ранний предок языка C через BCPL и B. языки

CPL [1] Первоначально был разработан в математической лаборатории Кембриджского университета как «Кембриджский язык программирования», а затем опубликован совместно Кембриджем и компьютерным подразделением Лондонского университета как «Комбинированный язык программирования» (некоторые также называли CPL «Cambridge Plus»). Лондон" [2] или «Язык программирования Кристофера» [3] ). Кристофер Стрейчи , Дэвид Бэррон В его разработке принимали участие и другие. Первая статья с его описанием была опубликована в 1963 году, когда она внедрялась на компьютере Titan в Кембридже и компьютере Atlas в Лондоне.

На него сильно повлиял АЛГОЛ 60 , но вместо того, чтобы быть чрезвычайно маленьким, элегантным и простым, CPL предназначался для более широкой области применения, чем научные расчеты, и поэтому был гораздо более сложным и не таким элегантным, как АЛГОЛ 60. CPL был большим языком для пришло время. CPL попыталась выйти за рамки ALGOL, включив в него управление промышленными процессами, обработку бизнес-данных и, возможно, некоторые ранние игры с командной строкой. [4] CPL был предназначен для обеспечения возможности низкоуровневого программирования и абстракций высокого уровня с использованием одного и того же языка.

Однако CPL внедрялся очень медленно. Первый компилятор CPL, вероятно, был написан примерно в 1970 году. [5] но этот язык так и не приобрел особой популярности и, похоже, бесследно исчез где-то в 1970-х годах.

BCPL (от «Basic CPL», хотя первоначально «Bootstrap CPL») был гораздо более простым языком, основанным на CPL, предназначенным в первую очередь как язык системного программирования , особенно для написания компиляторов ; [6] Впервые он был реализован в 1967 году, до первой реализации CPL. Затем BCPL через B привел к популярному и влиятельному языку программирования C.

Функция MAX, сформулированная Питером Норвигом: [5]

Max(Items, ValueFunction) = value of
§ (Best, BestVal) = (NIL, -∞)
while Items do §
(Item, Val) = (Head(Items), ValueFunction(Head(Items)))
if Val > BestVal then (Best, BestVal) := (Item, Val)
Items := Rest(Items) ̸§
result is Best ̸§

Используемый здесь символ блока закрывающего раздела ( ̸§) — это аппроксимация исходного символа, в котором поперечная черта вертикальна. Это доступно в Unicode как §⃒ но отображается неправильно во многих системах.

Реализации

[ редактировать ]

Считается, что CPL никогда не был полностью реализован в 1960-х годах и существовал как теоретическая конструкция с некоторыми исследованиями по частичным реализациям. [7] [8]

Питер Норвиг написал (для Yapps, компилятора-компилятора Python ) простой транслятор CPL в Python для современных машин. [5] [9]

См. также

[ редактировать ]
  1. ^ Бэррон, Д.В.; Бакстон, JN; Хартли, Д.Ф.; Никсон, Э.; Стрейчи, К. (1 августа 1963 г.). «Основные особенности CPL» . Компьютерный журнал . 6 (2): 134–143. дои : 10.1093/comjnl/6.2.134 . ISSN   0010-4620 .
  2. ^ «Клайв Физер о CPL и BCPL» . Lysator.liu.se . Проверено 18 августа 2013 г.
  3. ^ Дженсен, Ричард (9 декабря 2020 г.). « Чертовски глупый поступок» — происхождение C» . Арс Техника . Проверено 10 декабря 2020 г.
  4. ^ Ядав, П. (2005). Компьютер и языки . Издательство Дискавери. ISBN  978-81-8356-041-2 .
  5. ^ Jump up to: а б с Норвиг, Питер (23 августа 2011 г.). «Пророческое, но не идеальное: взгляд назад на статью о системном анализе в журнале Scientific American 1966 года» . Сеть блогов Scientific American . Проверено 10 декабря 2020 г.
  6. ^ Митчелл, Джон К.; Апт, Кшиштоф (2003). Концепции языков программирования . Издательство Кембриджского университета. ISBN  978-0-521-78098-8 .
  7. ^ Кулурис, Г.Ф. (1 января 1968 г.). «Лондонский компилятор CPL1» . Компьютерный журнал . 11 :26–30. дои : 10.1093/comjnl/11.1.26 .
  8. ^ Кулурис, Джордж (2013). «Выпуск 62 по возрождению компьютера / Компилятор компилятора - размышления пользователя спустя 50 лет / Компилятор CPL1» . Общество охраны компьютеров . Проверено 3 мая 2023 г.
  9. ^ Норвиг, Питер. «Полная программа шашек с аннотациями» . norvig.com . Проверено 11 июня 2021 г.

Библиография

[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 6ead55c6361857f56213a9153e13a454__1717950360
URL1:https://arc.ask3.ru/arc/aa/6e/54/6ead55c6361857f56213a9153e13a454.html
Заголовок, (Title) документа по адресу, URL1:
CPL (programming language) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)