[oodisc] Не хватает одной моей головы.
Anton Farygin
rider на altlinux.com
Пт Июл 8 11:54:43 MSD 2005
В письме Fri, 08 Jul 2005 13:39:41 +0600, Бабич Алексей
Владимирович написал:
> Для Grafica-Kharkov:
>
> БАВ>> интерпретаторе. Интерпретатор всегда, как мне кажется, медленнее
> БАВ>> нормально скомпилированного кода С, скажем.
>
> GK> я бы так категорично не утверждал по поводу _всегда_
> Я ещё добавил три слова, где подчёркиваю, что эхто моё мнение.
>
> GK> http://www.osp.ru/os/2000/12/045.htm
> Не авторитет: статья старая, всё меняется. В воторых автор почему-то решил гонять JAVA программы на виртуальной машине JAVA
> (которая работает в виртуальной машине "операционная система") скомпилировал бы GCJ, раз уж причислил (нечётко) к компилируемым
> языкам - думаю, получилось бы что-то вроде С++, тем более, весьма сходен. Ладно, теперь последнее сображение: интерпретатор
> языка интерпретирует _и_ затем выполняет, а скомпилированный код просто выполняется. Делаю вывод, что интерпретатор
> всегда медленнее. То есть, интерпретатор С будет медленнее, чем код, скомпилированный с С в родной для платформы код.
> То-же самое предположу про Perl, только не знаю, есть ли компиляторы Perl в родной для платформы код.
Есть интерпретатор C, который сначала
компилирует, потом выполняет. Время
выполнения простеньких скриптов на C
получается как время компиляции + собственно работа приложения.
Если компилятор быстрый, то на больших
задачах задержек практически не видно.
Да, кстати, я тут замерял одну задачу,
написанную на perl и потом мной
переписанную на C. Так вот за счет более
удобных алогоритмов парсинья больших
файлов задача на perl выполнялась за 0.12
секунды, задача на C - за 0.22 секунды.
Правда после оптимизации все поменялось ;-)
задача на C за 0.01 секунды, задача на perl - так же 0.12 секунды.
Вывод - все сильно зависит от программиста.
Но то, что Java тормоз - это однозначно ;-(
Даже не сколько тормоз, сколько пожиратель памяти и процессора.
Rgds,
Rider
Подробная информация о списке рассылки Oo-discuss