Forum użytkowników systemu szablonów PHPTAL
Nie jesteś zalogowany.
Obecnie w PHPTAL generator kodu jest prymitywny - ot po prostu wypluwa PHP jako string (ciutkę to jest zamotane, żeby wyglądało poważniej, ale niczego to nie wnosi).
W praktyce to tworzy różne problemy:
* Iteratory pętli są niepotrzebnie skomplikowane i wyliczają repeat/start, repeat/odd, itp. dla każdego elementu.
* Wyliczanie wyrażeń przez tal:attributes i ${} w atrybutach działa zupełnie inaczej
* W implementacji specjalnych atrybutów ciężko jest analizować zachowanie innych elementów. Na przykład cache'owanie fragmentów szablonu nie jest w stanie uwzględnić metal:fill-slot siedzących w danym elemencie.
Chodzi mi po głowie przerobienie generatora kodu, aby najpierw z drzewa elementów tworzył AST lub kod pośredni, który potem można przekazać optymalizatorowi. Optymalizator będzie w stanie wywalić zbędne rzeczy, prekalkulować wszystkie stałe wartości, pozmieniać kolejność generowania fragmentów kodu, itp. I dopiero ze zoptymalizowanej abstrakcyjnej wersji generować konkretny kod PHP.
Offline
porneL napisał:
Chodzi mi po głowie przerobienie generatora kodu, aby najpierw z drzewa
A jaki byłby status takich przerobek? Czy powstalaby druga galaz TALa czy to nadal bylby to ten sam system ino nowszy z odpowiednim updatem na stronie motion-twin?
Offline
Może to być oficjalne, jeśli uda się skontaktować z Laurentem Bédubourgiem z Motion Twin, ale póki co narazie niestety jest nieuchwytny ![]()
Tak, czy inaczej dużo kodu oficjalnego źródła się nie spodziewam, więc nie zaszkodzi nawet zrobienie osobnej gałęzi.
Offline
To może fork? ;~)
PHPTalmud - PHPTal Mocno Ulepszona Derywatywa ;-)
Offline
Autor ożył, wyszło 1.1.9, więc będzie oficjalnie.
A teraz wracając do tematu: jest ktoś, kto wie jak zabrać się za problem kompilacji z optymalizacją?
Offline