Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Введение
Ранний язык программирования для списков
Early programming language for lists
Язык обработки информации (IPL) — это язык программирования, созданный Алленом Ньюэллом, Клиффом Шоу и Гербертом А. Саймоном в корпорации RAND и Технологическом институте Карнеги примерно в 1956 году. Ньюэлл был разработчиком приложений и спецификатором языка, Шоу — системным программистом, а Саймон — пользователем приложений. Код включает в себя возможности, предназначенные для облегчения разработки программ, выполняющих простые задачи решения проблем, такие как работа со списками, динамическое выделение памяти, типы данных, рекурсия, функции как аргументы, генераторы и кооперативная многозадачность. IPL изобрел концепцию обработки списков, хотя и в стиле, близком к языку ассемблера.
Information Processing Language (IPL) is a programming language created by Allen Newell, Cliff Shaw, and Herbert A. Simon at RAND Corporation and the Carnegie Institute of Technology about 1956. Newell had the job of language specifier application programmer, Shaw was the system programmer, and Simon had the job of application programmer user. The code includes features intended to help with programs that perform simple problem solving actions such as lists, dynamic memory allocation, data types, recursion, functions as arguments, generators, and cooperative multitasking. IPL invented the concept of list processing, albeit in an assembly language style.
История
IPL впервые был использован для демонстрации того, что теоремы в «Principia Mathematica», которые Бертран Рассел и Альфред Норт Уайтхед доказали трудоемко вручную, на самом деле могут быть доказаны вычислительным путем. Согласно автобиографии Саймона «Модели моей жизни», это приложение первоначально было разработано посредством ручного моделирования, в котором его дети выступали в качестве вычислительных элементов, а карточки с записями использовались в качестве регистров, содержащих переменные состояния программы. IPL использовался для реализации нескольких ранних программ искусственного интеллекта, также созданными теми же авторами: «Логический теоретик» (1956), «Общий решатель задач» (1957) и их компьютерная шахматная программа NSS (1958). Было создано несколько версий IPL: IPL I (не был реализован), IPL II (1957 для JOHNNIAC), IPL III (существовал недолго), IPL IV, IPL V (1958, для IBM 650, IBM 704, IBM 7090, Philco модель 212 и многих других. Широко использовался). IPL VI представлял собой предложение по созданию аппаратного обеспечения для IPL. Был разработан сопроцессор «IPL VC» для CDC 3600 в Национальных лабораториях Аргонна, который мог выполнять команды IPL V. Он использовался для реализации еще одной программы для игры в шашки. Эта аппаратная реализация не позволила достаточно улучшить время выполнения, чтобы «успешно конкурировать с языком, более непосредственно ориентированным на структуру современных машин». Вскоре IPL был вытеснен Lisp, который обладал гораздо более мощными возможностями, более простым синтаксисом и преимуществом автоматической сборки мусора.
IPL was first utilized to demonstrate that the theorems in Principia Mathematica which were proven laboriously by hand, by Bertrand Russell and Alfred North Whitehead, could in fact be proven by computation. According to Simon's autobiography Models of My Life, this application was originally developed first by hand simulation, using his children as the computing elements, while writing on and holding up note cards as the registers which contained the state variables of the program. IPL was used to implement several early artificial intelligence programs, also by the same authors: the Logic Theorist (1956), the General Problem Solver (1957), and their computer chess program NSS (1958). Several versions of IPL were created: IPL I (never implemented), IPL II (1957 for JOHNNIAC), IPL III (existed briefly), IPL IV, IPL V (1958, for IBM 650, IBM 704, IBM 7090, Philco model 212, many others. Widely used). IPL VI was a proposal for an IPL hardware. A co processor “IPL VC” for the CDC 3600 at Argonne National Libraries was developed which could run IPL V commands. It was used to implement another checker playing program. This hardware implementation did not improve running times sufficiently to “compete favorably with a language more directly oriented to the structure of present day machines”. IPL was soon displaced by Lisp, which had much more powerful features, a simpler syntax, and the benefit of automatic garbage collection.