eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingPorównywanie gramatyk › Porównywanie gramatyk
  • Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.P
    OSTED!not-for-mail
    From: Borneq <b...@a...hidden.pl>
    Newsgroups: pl.comp.programming
    Subject: Porównywanie gramatyk
    Date: Fri, 4 Jan 2019 00:17:13 +0100
    Organization: ATMAN - ATM S.A.
    Lines: 18
    Message-ID: <q0m55q$cok$1@node1.news.atman.pl>
    NNTP-Posting-Host: public-gprs352734.centertel.pl
    Mime-Version: 1.0
    Content-Type: text/plain; charset=utf-8; format=flowed
    Content-Transfer-Encoding: 8bit
    X-Trace: node1.news.atman.pl 1546557434 13076 37.47.9.31 (3 Jan 2019 23:17:14 GMT)
    X-Complaints-To: u...@a...pl
    NNTP-Posting-Date: Thu, 3 Jan 2019 23:17:14 +0000 (UTC)
    User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101
    Thunderbird/60.4.0
    X-Mozilla-News-Host: news://news.atman.pl:119
    Content-Language: pl
    Xref: news-archive.icm.edu.pl pl.comp.programming:213155
    [ ukryj 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)

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: