-
Path: news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!not
-for-mail
From: Krzysiek Kowaliczek <k...@g...com>
Newsgroups: pl.comp.programming
Subject: Re: Gramatyki jezykow, ich kompilatory/interpretery i toole
Date: Fri, 09 Apr 2010 10:15:31 +0200
Organization: http://onet.pl
Lines: 31
Message-ID: <hpmnm3$il$1@news.onet.pl>
References: <3...@g...googlegroups.com>
NNTP-Posting-Host: krak.alatek.krakow.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: news.onet.pl 1270800899 597 217.96.2.229 (9 Apr 2010 08:14:59 GMT)
X-Complaints-To: n...@o...pl
NNTP-Posting-Date: Fri, 9 Apr 2010 08:14:59 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; pl-PL; rv:1.8.1.22)
Gecko/20090605 SeaMonkey/1.1.17
In-Reply-To: <3...@g...googlegroups.com>
Xref: news-archive.icm.edu.pl pl.comp.programming:185408
[ ukryj nagłówki ]Użytkownik Seweryn Habdank-Wojewódzki napisał:
> Mam pytanie, ktory z jezykow o niemarginalnej
> popularnosci uzywa takich tooli do wsparcia kompilatora
> tudziez interpretera? Jesli zaden popularny tego nie robi,
GCC do wersji 3.4 używało YACC. Od 3.4 ma ręcznie napisany parser.
Wyrzucenie YACC przyspieszyło pewnie to, że jest to generator
gramatyk LALR(1) i nie bardzo nadaje się do złożonych gramatyk
jak C++. Poniższy link opisuje m.in. problemy z generatorami
LALR dla C++:
http://scottmcpeak.com/elkhound/elkhound.ps
Innym przykładem jest Ocaml, który używa wersji YACC dla tego języka.
> to jakie sa przeciw stosowaniu tooli w takich sytuacjach,
> czyli czemu uzytkowe jezyki nie chca uzywac tooli?
Ręcznie pisanie parserów umożliwia większą kontrolę nad całym
procesem i co za tym idzie lepszą możliwość informacje o błędach i
lepszą możliwość reakcji na błędy, itp. Jeżeli podejdzie się do tego
starannie, efekt jest świetny o czym w odnośniku poniżej (część
przykładów jest wynikiem lepszej semantyki, a nie parsera):
http://blog.llvm.org/2010/04/amazing-feats-of-clang-
error-recovery.html
Generatory parserów umożliwiają szybsze napisanie gramatyki. Oczywiście
jest mniejsza elastyczność jeżeli chodzi o reakcję na błędy, ale przy
odpowiednim podejściu efekt też może być zadowalający:
http://research.swtch.com/2010/01/generating-good-sy
ntax-errors.html
Pozdrawiam
KK
Następne wpisy z tego wątku
- 09.04.10 12:04 Jacek Czerwinski
- 09.04.10 12:36 Krzysiek Kowaliczek
- 09.04.10 14:36 Daniel Janus
- 09.04.10 14:54 Krzysiek Kowaliczek
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-12 Jak na naszych oczach odradza się cenzura :-)
- 2025-01-11 Koszty prowadzenia firmy za granicą
- 2025-01-11 19 migrantów
- 2025-01-11 300km/h
- 2025-01-11 Kongres USA uchwalił "Prawo babci Pawlakowej" na MTK [Lex Gradma Pawlak]
- 2025-01-11 Riga => Specjalista ds. public relations <=
- 2025-01-11 Przestępca wyborczy Musk nadciąga nad Tuskistan?
- 2025-01-11 Białystok => Delphi Programmer <=
- 2025-01-09 Jaka nawigacja z asystentem zmiany pasa ruchu?
- 2025-01-10 Coś dusi.
- 2025-01-09 akumulator napięcie 12.0v
- 2025-01-10 Białystok => Architekt rozwiązań (doświadczenie w obszarze Java, A
- 2025-01-10 Warszawa => Software .Net Developer <=
- 2025-01-10 Białystok => Application Security Engineer <=
- 2025-01-10 Warszawa => System Architect (Java background) <=