-
Data: 2010-08-25 17:56:00
Temat: Re: LHS czy RHS?
Od: Jacek Czerwinski <...@...z.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 2010-08-25 19:38, Wojciech "Spook" Sura pisze:
> Dnia 25-08-2010 o 18:05:15 Marcin 'Qrczak' Kowalczyk <q...@k...org.pl>
> napisał(a):
>> Mimo wszystko porównałbym to z interpretacją drzewka. Może się okazać,
>> że gra jest niewarta świeczki.
>
> Zastanawiałem się nad tym - złożoność obu algorytmów jest praktycznie
> taka sama, więc w grę wchodzą głównie szczegóły implementacyjne..
>
> Po pierwsze, nie wystarczy samo drzewo wyrażenia. Wyrażenie f(x,y):=x+y
> zostanie rozbite na drzewo, po lewej stronie którego będzie podwieszona
> funkcja f(, jej parametry, przecinek składający je w listę i nawias
> domykający. Jeśli zdecyduję się na interpretowanie tak skonstruowanego
> drzewa, będzie mnie czekać dużo pracy - stwierdzenie, czy lewa gałąź
> jest poprawna,
Pobieznie sadzac, przecinkow, nawiasow juz ma nie byc w AST. To zadanie
parsera. Jesli zrozumialem. Sprawdzenie syntaxu masz zagwarantowane,
semantyke oczywiscie sprawdzasz.
> zdecydowanie o tym, czy dodawana jest funkcja czy
> zmienna, odnalezienie parametrów i wyszukanie ich w prawym poddrzewie i
> tak dalej. To będzie na pewno wolne.
Zrobilem jezyk na Antlr, interpreter to zadna tam VM, tylko wprost
dziedziczy z ich 'tree walker'. W realnych warunkach, jak raz
zapomnialem o optymalizacji, nigdy sobie nie przypomnialem ;)
Te wyrazenie ile razy bedziesz wartosciowal? W wewnętrznej petli CAD-a
lub gry fesnascie tysiecy / sek, czy kilka-naście razy w ogole?
Aha. W filozofii Antlr mozna element drzewa sobie poszerzyc,
odziedziczyc, wiec markery wg twojego pomyslu są do dodania. Co nie
znaczy ze wciskam narzedzie. Interpretacja wprost z drzewa jest naprawde
do rozwazenia. Tyle refleksji na marginesie.
Następne wpisy z tego wątku
- 25.08.10 20:48 Marcin 'Qrczak' Kowalczyk
- 25.08.10 21:00 Wojciech Muła
- 26.08.10 07:44 Krzysiek Kowaliczek
Najnowsze wątki z tej grupy
- 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
- 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
Najnowsze wątki
- 2024-10-04 Warszawa => QA Engineer <=
- 2024-10-04 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-10-04 Warszawa => Senior PHP Laravel Developer (e-commerce) <=
- 2024-10-04 Warszawa => Data Scientist / Data Engineer (predictive modelling) <=
- 2024-10-03 Nieparzyste dmuchanie
- 2024-10-03 Prognozowanie zużycia energii przez PGE?
- 2024-10-03 Re: Drugi ekran na Androidzie
- 2024-10-03 sprawiedliwosc nierychliwa
- 2024-10-03 zloto
- 2024-10-03 Odkurzacz mnie bije :(
- 2024-10-03 Gdańsk => Technical Lead ( (Java Background)) <=
- 2024-10-03 Warszawa => Mid IT Recruiter <=
- 2024-10-03 Olsztyn => Sales Specialist <=
- 2024-10-03 Leszczyna nie zna prawa?
- 2024-10-03 Warszawa => OpenText ECM Specialist <=