привет. скажите, как такое может быть: я написал свой простейший интерпретируемый ЯП. скармливаем ему сорец: Код (Text): int main() { int cnt = 0; while(cnt<1000000000){ ##миллиард итераций cnt+=1; } print(cnt); return 0; } запускаем, смотрим время исполнения (я в линуксах): теперь пишем то же самое на руби, питоне и перле по-порядку и смотрим результаты: Код (Text): //ruby i=0 while (i<1000000000) i+=1; end puts i; Код (Text): //питон q=0 while q<1000000000: q+=1 print q Код (Text): //перл $i=0; while ($i<1000000000){ ++$i;} print($i); как так?? моя наипростейшая реализация интерпретируемого языка (я не компилирую в байт-код, не делаю никаких оптимизаций, кеширований итд.) проигрывает только перлу?
а что, возможностей в твоем языке столько же сколько например в питоне или перле? Бестрее твой яву может быть только изза того что он ничего не проверяет и ничего не может кроме простейших операций.
nekrodaemon Вы сравниваете яблоки с конфетами. Вот когда Ваш интерпретатор будет по возможностям как ruby тогда и сравним. Простейший пример - в ruby целые чилса реализованны как ruby классы (большая часть ruby написанна на самом ruby). А в Вашем интерпретаторе как реализованны целые числа? DWORD?