Wszedłem sobie na portugalskojęzyczną stronę z wynikami testów jak ktoś próbował pokazać jak wydajny jest Tamarin. Trudno mi było uwierzyć, że ActionScript 3 jest szybszy od Pythona. Sam postanowiłem sprawdzić jak to z tym jest? Faktycznie, jak używamy silnego typowania i buforowania łańcuchów danych to się okazuje że nawet wydajnościowo dorównuje C/C++
Najdziwniejszy okazał się silnik skryptowy w Windows, bo nie mogłem zrozumieć dlaczego IE 7 wywala się. Jak użyłem WHScript to się przeraziłem. Poniższy skrypt został wykonany po 10290 ms.
function test() {
var s = "";
var e = 0.0;
var f = 1.0;
for(var i = 1; i <= 10000; i++) {
s += "teste";
e += 1.0/f;
f *= i;
}
return e
}
start = new Date();
test();
end = new Date();
addTime = end-start;
WScript.Echo(addTime + " ms.");
W IE7 taki test powodował pad przeglądarki. Nie zrażony tym chciałem zobaczyć jak JavaScript 2 w IE 7 wykona taki skrypt:
IE7 z JavaScript2 wykonał to w ciągu 375 ms. Opera wykonała to w 203 ms. a Firefox 2 w ciągu 855 ms.
Zastanawiam się czy może być szybciej? Owszem. Wyobrażcie sobie taką przeglądarkę w której mógłbym napisać taki kod
W tym przypadku dochodzi czas na wewnwtrzna kompilację do bajtkodu w pamięci i jego wykonanie. W ten sposób mielibyśmy jedną najszybszych przeglądarek. Coś jeszcze?
Zamiast kazać przeglądarce dokonywać kompilacji wystarczy samo załadowanie bajtkodu.
Wystarczyłoby dodać taka linijkę kodu w dokumencie HTML
Bajtkod jest wyjątkowo wydajny. Zajmuje bardzo mało miejsca. Kod źródłowy w AS3 zajmował mi 578 bajtów to po kompilacji do bajtkodu tylko 291 bajtów. A to jeszcze można poddać kompresji do formatu SWF.
Coś mi się wydaje że trzeba napisać taką przeglądarkę na bazie silnika Flash Playera i wspieraną przez Adobe AIR niż czekać aż upowszechni się JavaScript2.
W praktyce mamy już takie biblioteki jak AS3 Eval czy swfassist
Z tej pierwszej można by zrobić konwersję kodu do bajtkodu, a z tej drugiej ładowanie bajtkodu z plików SWF do aplikacji. A cała koncepcja tkwi w napisaniu odpowiedniego plugina do htmlwrappera
2 komentarze:
Gdzie masz te szablony . Piszesz o szablonach a masz taki standardwy.
Potrzebuje zlikwidować marginesy na blogspot. Widziałem blogu na blogspot ktore mają trzy kolumny.
Moze bys cos napisal dla mnie zeby udowodnic ze potrafisz.
Gdzie pisałem o szablonach? W sierpniu 2006 roku, a ta koncepcja dotyczyła pewnej idei przesyłania danych ze strony WWW do pliku SWF.
A likwidacja marginesów na blogspot.com to kwestia znajomości styli CSS.
Prześlij komentarz