IBM PL/S

Материал из Циклопедии
Перейти к навигации Перейти к поиску

PL/S (Programming Language/Systems) — машинно-ориентированный язык программирования, основанный на PL/I. Создан компанией IBM в конце 1960-х под именем Basic Systems Language (BSL) как замена для ассемблера во внутренних программных проектах; он включает в себя поддержку ассемблерной вставни и явный контроль над использованием регистра.

Первые проекты на PL/S: пакетная утилита IEHMOVE и Time Sharing Option

В 1970-х гг. IBM переписала свою флагманскую операционную систему на PL/S. Пользователи часто просили, чтобы IBM выпустила средства разработки, но компания отказалась это делать, поскольку продукт был её собственностью. К тому же были опасения, что другие компании получат конкурентное преимущество. Однако исходный код PL/S всё-таки был выдан части клиентов IBM.

В середине 1970-х единственный программист RAND Corporation с помощью общедоступной информации написал полнофункциональный компилятор PL/S. Но IBM была недовольна тем, что программист сделал ошибку, использовав информацию «только для внутреннего использования», и IBM угрожала предъявить судебный иск, тем самым запретив продажу продукта.

Полностью совместимый компилятор PL/S был разработан Fujitsu Ltd в конце 1970-х, используя исходный код компилятора PL/I Optimizer как основу для продукта. Этот компилятор PL/S использовался как внутри Fujitsu, так и некоторыми ее внешними филиалами. Неизвестно, знала ли IBM об этом факте использования своей интеллектуальной собственности. Название этого компилятора PL/S совпало с названием фазы компилятора PL/I Optimizer, но при этом буква «I» была заменена на «J». Все уведомления об авторском праве в пределах модулей были удалены.

Поскольку рынок компьютеров и программного обеспечения отказался от универсальных компьютеров типа IBM и MVS, IBM отказалась от своих слов и предложила текущие версии PL/S некоторым партнёрам компании, являющимися независимыми поставщиками ПО.

Литература[править]

  • BSL Language Specifications, International Business Machines Corp., 1968, Z28-6642-0. Note that BSL was renamed PL/S and replaced by PL/S II
  • W.R. Brittenham, «PL/S, Programming Language/Systems», Proc GUIDE Intl, GUIDE 34, May 14, 1972, pp. 540-556
  • W.R. Brittenham and B.F. Melkun, «The Systems Programming Language Problem», Proceedings of the IFIP Working Conference on Machine Oriented Higher Level Languages, Trondheim, Norway, August 29-31, 1973, pp. 29-47. Amsterdam: North-Holland Publishing Co.; New York: American Elsevier, 1974. This paper explores the technical and psychological problems encountered in implementing PL/S. The language and compiler are described. The discussion that followed presentation of the paper is included.
  • Gio Wiederhold and John Ehrman, «Inferred SYNTAX and SEMANTICS of PL/S», Proceedings of the SIGPLAN symposium on Languages for system implementation 1971, in SIGPLAN Notices 6(10) October 1971
  • Guide to PL/S II, International Business Machines Corp., 1974. GC28-6794-0 Note that this manual is very out of date with respect to the PL/X language in use today.
 
Используемые
в разработке

Ада • A+ • APL • Atlast Forth • AWL • Язык ассемблера • ActionScript • ABAP/4 • AutoIt • AWK • BeanShell • Бейсик • Си • Кобол • C++ • C# • Cω • Clarion • Clojure • ColdFusion • Common Lisp • D • dBase • Delphi • DuAL • Eiffel • Erlang • Euphoria • F# • Форт • Фортран • Gambas • Go • Groovy • HAL/S • Haskell • IBM PL/S • Icon • Iridium • Java • JavaScript • Limbo • Lua • Модула-3 • Object Pascal • Objective-C • OCaml • Oz • Parser • Паскаль • Компонентный Паскаль • Perl • Pixilang • PHP • PowerBASIC • Python • ПЛ/1 • Пролог • Qi • Ruby • Scala • Scheme • Seed7 • Smalltalk • SQL • PL/SQL • Tcl • TouchDesigner • Vala • Visual Basic (.NET) • X-Robot

Академические

Agda • Clean • Curry • Idris • Лого • ML • Оберон • Planning C • РЕФАЛ • Симула •

IEC 61131-3

Instruction List • ST • FBD • Ladder Diagram (LD) • SFC

Прочие

Алгол • Алгол 68 • Модула-2 • Миранда • Hope • НОРМИН • Санда

Эзотерические

HQ9+/HQ9++ • INTERCAL • Brainfuck • Befunge • Malbolge • Piet • Spoon • Unlambda • Whitespace • FALSE • LOLCODE • Глагол

Визуальные

G (LabVIEW) • Microsoft VPL • Sikuli • VisSim • Алиса • ДРАКОН • Скретч

Прочее

Динамические • Для создания компьютерных игр • Компилируемые • С ключевыми словами не на английском языке • С C-style синтаксисом • Синтаксис • Системное программное обеспечение • YoptaScript

Категория Языки программирования