Własny język interpretowany
Ostatnio zmodyfikowano 2011-06-05 22:21
ksanderon Temat założony przez niniejszego użytkownika |
Własny język interpretowany » 2011-06-05 20:18:57 Napisałem w c++ wstępną implementacją własnego języka interpretowanego(i nie jest to jakiś tam shit wykonujący jedną funkcję jakich wiele widziałem)- wszystko działa prawie tak jak chciałem ( została mi implementacja return i break ale bez tego da się żyć...), jednak jego wydajność pozostawia jeszcze wiele do życzenia- może ktoś podpowie, gdzie szukać optymalizacji?
Wszelkie uwagi mile widziane.
Co zaskakujące hash_map używany do trzymania zmiennych i funkcji okazuje się być całkiem wydajny...(?) a to o niego z początku najbardziej się obawiałem- gdy zaczynałem projekt. |
|
DejaVu |
» 2011-06-05 20:34:32 Być może masz zły algorytm u podstaw np. do analizy kodu tj. do wyszukiwania słów kluczowych, porównywania tekstu itp. Generalnie szybkość aplikacji zależy przede wszystkim od doboru algorytmów o maksymalnie małej złożoności bądź pisaniu algorytmów również o małej złożoności. One stanowią masę krytyczną wpływającą na szybkość działania aplikacji, a nie jakieś sztuczki i kruczki językowe. |
|
michalp |
» 2011-06-05 22:13:52 Twórz drzewo wykonania (np. drzewo AST) i w oparciu o niego wykonuj kod. Albo kompiluj do kodu bajtowego i interpretuj go za pomocą maszyny wirtualnej. Rozwiązanie oparte na drzewie wykonania powinno być łatwiejsze i szybsze w implementacji. |
|
szyx_yankez |
» 2011-06-05 22:21:55 To może napisz co już masz i jak rozwiązałeś aktualne problemy, to my ewentualnie poodpowiemy Ci co poprawić/zoptymalizować.
/edit: AAA kod w paczce, nie zauważyłem...
/edit2: zapoznaj się z funkcjami klasyfikacji znaku. |
|
« 1 » |