Aplikacyjne systemy komputerowe

Applicative computing systems , czyli ACS , to systemy rachunku obiektowego oparte na logice kombinatorycznej i rachunku lambda . Jedynym istotnym pojęciem rozważanym w tych systemach jest reprezentacja przedmiotu . W logice kombinatorycznej jedynym metaoperatorem jest zastosowanie w sensie zastosowania jednego obiektu do drugiego. W rachunku lambda używane są dwa metaoperatory: aplikacja – taka sama jak w logice kombinatorycznej oraz abstrakcja funkcyjna , która wiąże jedyną zmienną w jednym obiekcie.

Cechy

Obiekty generowane w tych systemach to byty funkcjonalne o następujących cechach:

  1. liczba miejsc argumentów, czyli obiektowość nie jest stała, ale umożliwia krok po kroku interoperacje z innymi obiektami;
  2. w procesie generowania obiektu złożonego jeden z jego odpowiedników – funkcja – jest nakładany na inny – argument – ​​ale w innych kontekstach mogą one zmieniać swoje role, tzn. funkcje i argumenty są rozpatrywane na równych prawach;
  3. dozwolone jest samonakładanie funkcji, tzn. dowolny obiekt może być nałożony na siebie.

ACS dają solidną podstawę dla aplikacyjnego podejścia do programowania.

Wyzwanie badawcze

Brak pamięci i wrażliwości na historię w aplikacyjnych systemach komputerowych jest podstawowym powodem, dla którego nie zapewniły one podstaw do projektowania komputerów. Co więcej, większość systemów aplikacyjnych wykorzystuje operację podstawienia rachunku lambda jako swoją podstawową operację. Operacja ta ma praktycznie nieograniczoną moc, ale jej kompletna i sprawna realizacja nastręcza projektantowi maszyny ogromne trudności.

Zobacz też

  1. ^   Wolfengagen VE Metody i środki do obliczeń z obiektami. Aplikacyjne systemy obliczeniowe . — M.: JurInfoR Ltd., „Centrum JurInfoR”, 2004. — xvi+789 str. ISBN 5-89158-100-0 .
  2. ^   Backus, J. (1978). „1977 Wykład z nagrodą Turinga: czy programowanie można uwolnić od stylu von Neumanna? Styl funkcjonalny i jego algebra programów” . Kom. Z ACM . 2 (8): 613–641. doi : 10.1145/359576.359579 . S2CID 16367522 .

Dalsza lektura