Article View: pl.comp.lang.pascal
Article #92674Analiza kodu Pascala - Yacc?
From: Borneq
Date: Fri, 17 Oct 2008 10:09
Date: Fri, 17 Oct 2008 10:09
25 lines
2397 bytes
2397 bytes
Chciałbym napisać analizator kodu Pascala w wersji Delphi/Kyliź jak i
Lazarusa który mógłby zanalizować całe projekty i pakiety, znajdować drzewo
użycia unitów jak i zbiór klas i metod używanych w tych unitach.
Analizator potrzebny byłby głownie z powodu:
Piszę sobie bibliotekę która miała by działać zarówno w Delphi/Kylixie jak i
w Lazarusie; są przypadki zaimportowania znanych pakietów jak Synedit,
jednak nie chciałbym rozwijać dwóch wersji które i tak w końcu się rozminą.
Potrzebny byłby konwerter który mógłby automatycznie konwertować projekt w
obie strony.
Do tego potrzebny jest parser - do konwersji Delphi<->Kylix wystarczało
{$ifdef LINUX} i {$ifdef VisualCLX} w kodzie oraz mały programik do
konwersji który:
- zmienia rozszerzeń dfm<->xfm w programach testowych
- w plikach .dof tworzenie/usuwanie "Conditionals=VisualCLX" dla Delphi z
CLX
- tworzenie .kof dla Kylixa
- w plikach cfg dodawanie/usuwanie do opcji -D " VisualCLX "
- tworzenie .plików .conf Linuxa z "-DVisualCLX"
- zmiany w plikach pas: tam gdzie było {$R *.dfm} zamiana na {$R *.xfm}
W tym przypadku nie trzeba parsowania, ale jeśli mam nietyle zmieniać
składnię co określać jakich unitów z Vcl/jcl mam użyć, jest potrzebny
analizator.
Który z generatorów parserów warto użyć? Yacc czy może coś innego (preferuję
analize prawostronną jak LALR czy :LR(1) ), mam parę plików z gramatyką
Pascala, ale chętnie jeszcze jakiś bym znalazł pasujący do składni Delphi.
Technical Details
Message-ID:
<gd9o7o$k2r$1@news.onet.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!not-for-mailShow Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!not-for-mail From: "Borneq" <borneq@antyspam.hidden.pl> Newsgroups: pl.comp.lang.pascal Subject: Analiza kodu Pascala - Yacc? Date: Fri, 17 Oct 2008 12:09:18 +0200 Organization: Onet.pl Lines: 26 Message-ID: <gd9o7o$k2r$1@news.onet.pl> NNTP-Posting-Host: 194.117.240.61 Mime-Version: 1.0 X-Trace: news.onet.pl 1224238136 20571 194.117.240.61 (17 Oct 2008 10:08:56 GMT) X-Complaints-To: usenet@news.onet.pl NNTP-Posting-Date: Fri, 17 Oct 2008 10:08:56 +0000 (UTC) X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5579 X-Sender: WK4OsA3FL4utLjJSFhkKpY8vlsXcPUZqaT5f9riDccQ= X-Newsreader: Microsoft Outlook Express 6.00.2900.5512 X-Priority: 3 X-MSMail-Priority: Normal Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit