-
Data: 2019-01-04 00:17:13
Temat: Porównywanie gramatyk
Od: Borneq <b...@a...hidden.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Dość nietrywialny problem.
O ile porównanie plików tekstowych jest szeroko znane, to jak jest z
gramatykami zdefiniowanymi przez rozszerzone produkcje EBNF, takie ze
znakami + (1 i więcej razy potarzaj) czy * (0 i więcej razy potarzaj) ?
Przy porównywaniu ma nie zważać na kolejność reguł ani na kolejność
produkcji w regule. Tak samo na nazwy nieterminalne.
Trochę co innego niż stwierdzenie, że dwie gramatyki generują taki sam
język, bo nie tylko tak trzeba porównać, ale i wskazać różnice, na
szczęście dla większych zmian generujących ten sam język (na przykład
eliminacja rekurencji, łączenie reguł) można stwierdzać różnice, było by
to nawet wskazane, byle by szybko "łapać synchronizację".
Co takiego aby można było stwierdzić jakie różnice są w różnych plikach
gramatyk dla tego samego języka, Pascala,Javy, C,itd.. a także porównać
np. definicje C i C++ - jakie podobieństwa i jakie różnice, a także Javy
i C# itp.(to ostatnie oznacza że musiałby być w pewnym stopniu ślepy
również na symbole terminalne generujące inne języki, byle by mógł
wyłapać różnice w strukturze i filozofii języka - ale to trudniejszy
warunek niż porównywanie dla tego samego języka)
Następne wpisy z tego wątku
Najnowsze wątki z tej grupy
- 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
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
- Ideologia Polskiego Programisty wer.3
Najnowsze wątki
- 2024-04-27 Nowy, "szybki "komputer AsRock nie posiada modułu TPM
- 2024-04-27 Nowy, "szybki "komputer AsRock nie posiada modułu TPM
- 2024-04-27 Warszawa => Inżynier DevOps (projekt JP) <=
- 2024-04-27 Warszawa => Senior Account Manager (on-site) <=
- 2024-04-27 Wrocław => Dyrektor Sprzedaży (branża usług/produktów IT) <=
- 2024-04-27 Warszawa => Sales Representative for Outsourcing Services <=
- 2024-04-27 Chrzanów => Administrator i wdrożeniowiec Lotus Notes/Domino <=
- 2024-04-27 Ja pierdolę...
- 2024-04-27 Ryby i kawitacja
- 2024-04-27 Zabrze => Junior HelpDesk <=
- 2024-04-27 Katowice => Administrator IT - Wirtualizacja i Konteneryzacja <=
- 2024-04-27 Bażanowice => Inżynier Industrializacji - Elektronik <=
- 2024-04-27 Warszawa => Full Stack web developer (obszar .Net Core, Angular6+) <=
- 2024-04-27 Zadaszenie tarasu, a wymagany spadek
- 2024-04-27 Warszawa => Senior Account Manager <=