[Moscow.pm] А все таки классный язык Perl.

Grigory V.Sapunov grigory.sapunov на gmail.com
Пн Дек 10 01:22:45 PST 2012


2012/12/9 Ivan Petrov <i.petro.77.00 на gmail.com>:
>>>>> 2. не потерять при этом в эффективности
>>>
>>>> Здрасьте. Лишние машинные инструкции не бесплатны.
>>>
>>> ты думаешь что когда программист пишет
>>>
>>> local a = tonumber(b) + c
>>>
>>> в преобразовании tonumber не выполняются "лишние машинные инструкции"?
>
>> ты думаешь, что язык, в котором числа хранятся в родном для машины
>> формате (я, например, про C) будет проводить операции с ними с такой
>> же эффективностью, как и, скажем, перл?
>
> вот тут мы приходим к тому что эффективность (в узком значении этого
> слова == скорость) программы определяется не типизацией а близостью
> языка к "родному машинному формату".

Я лишь хотел сказать, что утверждение:

"еще раз повторяю, нерелигиозный: ибо на примере Perl показано, что есть путь
1. уйти от типизации
2. не потерять при этом в эффективности"

Некорректно.

Ну и от типизации, пожалуй, эффективность в её скоростном понимании
всё же тоже зависит -- динамическая типизация небесплатна и требует
какого-то обслуживания в рантайме (и со стороны машинных инструкций и
со стороны требуемой памяти). Другое дело, что далеко не везде это
важно.

> но если вернуться к слову эффективность в ее начальном значении, то тут еще станет важным
> 1. собственно написание кода
> 2. легкость внесения в него изменений

Полностью согласен. В изначальном значении (с тех времён, когда ещё
считали такты), скорее, это была всё же скорость выполнения, но сейчас
да, указанные два момента гораздо более важны.

> и тогда неизбежно приходишь к тому что языки С и Perl по эффективности
> сравнивать нельзя. нужно один дополнять другим.

Именно.


Подробная информация о списке рассылки Moscow-pm