Specyfikacja LEM

Z Lem
Wersja AndrzejSalwicki (dyskusja | edycje) z dnia 11:09, 31 sty 2018

(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)
Skocz do: nawigacji, wyszukiwania

Szkic specyfikacji projektu LEM

Główne założenie projektu LEM: język ma służyć do komunikacji pomiędzy ludźmi. Programy mają być czytelne i łatwe w obróbce zautomatyzowanej: kompilator, proof-checker, ...

Notatki -brulion

  • zachować tyle ile można z gramatyki Loglanu'82. ale uwzględni
  • wprowadzić moduły interface, specification, verification (z myślą o projekcie SpecVer).
  • jakoś zdefiniować bibliotekę(i) klas i procedur - tego brakuje w Loglanie'82..
  • zezwolić na przekazywanie typu jako parametru z dodatkowym warunkiem: typ przekazywany jako parametr aktualny ma być podtypem typu T wymienionego jako parametr formalny w deklaracji procedury.
  • zachować czy zmodyfikować sygnalizacje wyjątków i ich obsługę?

Pierwsza wersja specyfikacji - Trawiasta

Zachować Loglan gdzie to możliwe.

  • wprowadzić operator copy do wyrażeń obiektowych,
  • wprowadzić nazwy protokołów np. call, raise, alien, serve,

call - wywołanie metody, raise - zgłoszenie sygnału, alien - obce wołanie metody w procesie, serve - wywołanie usługi w serwerze usług

  • new, newarray, newprocess - tak to powinno wyglądać, ale dopuśćmy skróty tj. new
  • prrzekazywanie typu jako parametru? TAK! Ale koniecznie trzeba dopuścić by parametrem aktualnym mógł byc podtyp typu wskazanego w nagłówku modułu jako typ formalny
  • uporządkować koncepcję biblioteki modułów
  • itd.
  1. Czy dojęzyka wprowadzic moduły specification? proof? etc. Nie wiem


wersja Gliniana

wersja Gipsowa

wersja Drewniana

Wersja ostateczna - Kamienna