-
Data: 2013-08-14 23:36:34
Temat: Re: Algol68
Od: A.L. <a...@a...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On Wed, 14 Aug 2013 21:29:12 +0000 (UTC), "Stachu 'Dozzie' K."
<d...@g...eat.some.screws.spammer.invalid> wrote:
>On 2013-08-14, A.L <a...@a...com> wrote:
>> Swego czasu Algol68 uchodzil za "niemozliwy do zaimplementowania" ze
>> wzgledu na zlozonosc gramatyki jak i formalizmu uzytego do opisu
>> gramatyki. Okazalo sie jednak ze jak najbardziej do zaimplementowania;
>> powstalo calkiem sporo implementacji.
>[...]
>> Wiedza o budowie kompilatorow posunela sie tak daleko ze kompilator
>> Algolu68 jest w zasiegu hobbysty. Oto kompilator pelnego Algolu68
>> zaimplementowany przez facia ktory na codzien jest inzynierem
>> chemikiem
>>
>>
>> http://jmvdveer.home.xs4all.nl/
>
>W sumie mnie to specjalnie nie dziwi. Niedawno jako sysadmin (czyli na
>potrzeby zawodowe) chyba trzeci czy czwarty raz wyprodukowałem sobie
>parser w oparciu o gramatykę (tym razem to był parser formatowania
>wiki). Jeśli ja sobie radzę z takimi rzeczami, to to nie może być
>trudne.
>
Tak. Tylko ze Algol68 opisany jest nei w BNF, a w jezyku gramatyk
wielopoziomowych Wijngaardena. To w niczym nie przypomina notacji BNF;
to jest zupelnie inne zwierze. Nei znajdzie sie tego w popularnych
ksiazkach na temat kompilatorow. Kawalek gramatyki Algolu60 ponizej.
Gramatyka vW to, w skrocie mowiac, gramatyka ktora moze byc uzyta do
definiowania nieskonczonej ilosci gramatyk przy pomocy skonczonej
ilosci regul
A.L.
kawaleh Algolu68
a) program text : STYLE begin token, new LAYER1 preludes,
parallel token, new LAYER1 tasks PACK,
STYLE end token.
b) NEST1 preludes : NEST1 standard prelude with DECS1,
NEST1 library prelude with DECSETY2,
NEST1 system prelude with DECSETY3, where (NEST1) is
(new EMPTY new DECS1 DECSETY2 DECSETY3).
c) NEST1 EXTERNAL prelude with DECSETY1 :
strong void NEST1 series with DECSETY1, go on token ;
where (DECSETY1) is (EMPTY), EMPTY.
d) NEST1 tasks : NEST1 system task list, and also token,
NEST1 user task PACK list.
e) NEST1 system task : strong void NEST1 unit.
f) NEST1 user task : NEST2 particular prelude with DECS,
NEST2 particular program PACK, go on token,
NEST2 particular postlude,
where (NEST2) is (NEST1 new DECS STOP).
g) NEST2 particular program :
NEST2 new LABSETY3 joined label definition
of LABSETY3, strong void NEST2 new LABSETY3
ENCLOSED clause.
h) NEST joined label definition of LABSETY :
where (LABSETY) is (EMPTY), EMPTY ;
where (LABSETY) is (LAB1 LABSETY1),
NEST label definition of LAB1,
NEST joined label definition of$ LABSETY1.
i) NEST2 particular postlude :
strong void NEST2 series with STOP.
Następne wpisy z tego wątku
- 15.08.13 00:13 Edek
- 15.08.13 00:17 Borneq
- 15.08.13 00:57 Edek
- 15.08.13 09:24 Wojciech Muła
- 15.08.13 21:15 A.L.
- 15.08.13 21:17 A.L.
- 15.08.13 23:25 Borneq
- 15.08.13 23:34 A.L.
- 16.08.13 22:54 Wojciech Muła
- 17.08.13 02:28 A.L.
- 17.08.13 10:25 Zenon Oktawiec
- 18.08.13 00:10 Wojciech Muła
- 18.08.13 23:12 Maciej Sobczak
- 19.08.13 02:37 A.L.
- 19.08.13 09:06 g...@g...com
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-01-13 Warszawa => Key Account Manager <=
- 2025-01-13 Szczecin => Senior Field Sales (system ERP) <=
- 2025-01-13 Rzeszów => International Freight Forwarder <=
- 2025-01-13 Bydgoszcz => Specjalista ds. Sprzedaży (transport drogowy) <=
- 2025-01-13 Poznań => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-01-13 Warszawa => Staż w dziale Sprzedaży B2B <=
- 2025-01-13 Wydajność klimy w obecnych temperaturach
- 2025-01-13 Błonie => Analityk Systemów Informatycznych (TMS SPEED) <=
- 2025-01-13 Kraków => UX Designer <=
- 2025-01-13 Katowice => Key Account Manager (ERP) <=
- 2025-01-13 Mińsk Mazowiecki => Spedytor Międzynarodowy <=
- 2025-01-12 USB3.x->HDMI/DP ze sterownikami w win11
- 2025-01-12 Jak na naszych oczach odradza się cenzura :-)
- 2025-01-11 Koszty prowadzenia firmy za granicą
- 2025-01-11 19 migrantów