URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 55191
[ Назад ]

Исходное сообщение
"Сравнение 72 реализаций языков программирования"

Отправлено opennews , 01-Июн-09 13:49 
Guillaume Marceau опубликовал (http://gmarceau.qc.ca/blog/2009/05/speed-size-and-dependabil...) наглядный обзор параметров 72 реализаций языков программирования, использовав для этого 19 специальных тестов, подготовленных проектом "The Computer Language Benchmarks Game (http://shootout.alioth.debian.org/)", в рамках которого производится ежедневный анализ изменения параметров 1368 приложений из состава Debian, после их пересборки или выполнения различными версиями компиляторов и интерпретаторов. Оцениваются такие параметры, как скорость выполнения, потребление памяти и размер исходного кода, необходимый для реализации определенных функций.


В итоге, для сравнительной оценки изменения поведения языков в зависимости от выполняемых задач, был подготовлен достаточно интересный визуальный отчет (http://gmarceau.qc.ca/blog/uploaded_images/size-vs-speed-vs-...), в корне отличающийся от стандартных диаграмм, используемых при подобных сравнениях. Параметры каждого я...

URL: http://gmarceau.qc.ca/blog/2009/05/speed-size-and-dependabil...
Новость: http://www.opennet.me/opennews/art.shtml?num=21974


Содержание

Сообщения в этом обсуждении
"Сравнение 72 реализаций языков программирования"
Отправлено anon , 01-Июн-09 13:49 
Идеальный язык - stalin :D

"Сравнение 72 реализаций языков программирования"
Отправлено andr.mobi , 29-Июн-09 14:42 
> быстрым, но усложненным системным языкам, при этом в нижний правый угол будет привязан к элегантным, но медленным, скриптовым языкам.

К таким высказываниям лучше прикладывать "ИМХО". Не вижу ничего элегантного в "медленных скриптовых" языках, только очень загадочный местами код и очень много возможностей лепить трудноуловимые баги. Усложнённость же "быстрых системных" языков (видимо имеется в виду C++) включает в себя всего несколько свежих концепций, в основном взятых из других языков (см. "Дизайн и эволюция C++"), которые совсем не сложно освоить, достаточно прочитать 2-3 толковые книжки.

Страунструп - голова. Кроме него к С++ приложили свои мозги такие монстры, как Керниган, Дуг Маккилрой и прочие легендарные личности, все работали одной командой. Если мы чего-то там не понимаем, нужно помнить, что мы мало читали в детстве, и не те книжки скорее всего, что надо стремиться к знаниям, а не искать ленивого успокоения в мутной тухлой заводи "элегантных" медленных скриптовых языков.


"Сравнение 72 реализаций языков программирования"
Отправлено Аноним , 01-Июн-09 14:06 
Мне больше gnat понравился.

"Сравнение 72 реализаций языков программирования"
Отправлено ixrws , 01-Июн-09 14:19 
>Мне больше gnat понравился.

Концепция, и работа ады прекрасная, мне после С++ очень понравилось, да и компонетное программированое реализуется классно. Вот только одно но, паскально-модульный синтаксис это нечто, не могу его не то что бы осилить, но когда пишеш на С постоянно, даже на лиспе и хаскеле легче писать, нежели на паскально-модульном. А в целом и реализация у гната хорошая, и язык мощьный и количество биндингов тоже неплохо для старта.
А то что можно и ссылки и указатели и gc и прямое высвобождение смешивать - это заставило проникнуться:)


"Сравнение 72 реализаций языков программирования"
Отправлено pavlinux , 01-Июн-09 14:23 
>>Мне больше gnat понравился.
>
>Концепция, и работа ады прекрасная, мне после С++ очень понравилось, да и
>компонетное программированое реализуется классно. Вот только одно но, паскально-модульный синтаксис это нечто,

Чем же в институте занимался??? Там именно Паскаль преподают.


"Сравнение 72 реализаций языков программирования"
Отправлено gluk47 , 01-Июн-09 14:30 
В МГУ, например, на кое-каком факультете, про модули на паскале не заикаются. Всё хоть сколько-нибудь серьёзное предлагается писать на си, си++ и потом на чём угодно

"Сравнение 72 реализаций языков программирования"
Отправлено ДяДя , 01-Июн-09 20:48 
Конечно. Своих то языков в МГУ, поди, нет ? ;-)
Поэтому Pascal не полюбили.

"Сравнение 72 реализаций языков программирования"
Отправлено pavlinux , 01-Июн-09 22:49 
> Конечно. Своих то языков в МГУ, поди, нет ? ;-)

Как же ж... КуМИР :)


А Паскаль рекомендован UNESCO, с целью сохранения мозга детей (даже не Бейсик).


"Сравнение 72 реализаций языков программирования"
Отправлено 2Nike , 01-Июн-09 19:32 
В институтах обучают ТЕХНИКЕ программирования. Поэтому и начинают с Паскаля по одной простой причине, синтаксис у него понятен для новичков. После выпуска Вы можете программировать хоть на брэйн факе, все необходимые навыки у Вас уже будут.

"Сравнение 72 реализаций языков программирования"
Отправлено szh , 03-Июн-09 10:41 
Синтаксис С чуть-чуть сложнее чем у Паскаля. Начинать с ненужного паскаля чтобы было проще - держать студентов за идиотов. Но если они действительно идиоты, то программистами всё равно не станут , и можно начинать с С.

"Сравнение 72 реализаций языков программирования"
Отправлено Filosof , 02-Июн-09 19:28 
Незнаю как у вас в институтах, а у нас в Универах... -:)
ну нас редложили С или Паскаль. Мы выбрали С. Знаете, нисколько не жалею...

"Сравнение 72 реализаций языков программирования"
Отправлено Аноним , 03-Июн-09 03:38 
>Незнаю как у вас в институтах, а у нас в Универах... -:)
>
>ну нас редложили С или Паскаль. Мы выбрали С. Знаете, нисколько не жалею...

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


"Сравнение 72 реализаций языков программирования"
Отправлено szh , 03-Июн-09 10:43 
у языка С есть суровые преймущества в некоторых применениях. Знание С может оказаться полезным.


"Сравнение 72 реализаций языков программирования"
Отправлено XoRe , 04-Июн-09 11:42 
>[оверквотинг удален]
>>
>>ну нас редложили С или Паскаль. Мы выбрали С. Знаете, нисколько не жалею...
>
>если подразумевалось, что профессионал обязан уметь абстрагироваться от конкретных реализаций и решать
>задачи, то я с вами согласен.
>но если вы убеждены в преимуществе языка с архаичной структурой, то мне
>вас жаль.
>кроме того, вы не уточнили поколения, диалекты. паскаль значительно прогрессировал (да и
>паскаля в классическом представлении уже давно нет), си тоже не стоял
>на месте.

Имхо, С, как первый язык для изучения, лучше позволяет абстрагироваться.
Гораздо меньше ограничений в том, как писать код - в одну строку, или в несколько; как использовать операторы и т.д. - создается гораздо меньше стереотипов.
А стереотипы - это зло для программирования и вообще для творчества.


"Сравнение 72 реализаций языков программирования"
Отправлено Cobold , 04-Июн-09 12:39 
Знаете, лучший язык для изучения в качестве первого это форт, как раз согласно Вашим аргументам. Свобода там полная, уровень абстракции любой - хоть AI для микроконтроллера пиши, и скорость исполнения не хилая. А ещё форт это отличный способ почувствовать как свобода может мешать на серьёзных проектах и почему другие языки её ограничивают. Главное не заиграться слишком долго :)

"Сравнение 72 реализаций языков программирования"
Отправлено XoRe , 05-Июн-09 10:45 
>Знаете, лучший язык для изучения в качестве первого это форт, как раз
>согласно Вашим аргументам. Свобода там полная, уровень абстракции любой - хоть
>AI для микроконтроллера пиши, и скорость исполнения не хилая. А ещё
>форт это отличный способ почувствовать как свобода может мешать на серьёзных
>проектах и почему другие языки её ограничивают. Главное не заиграться слишком
>долго :)

Ну... я все-же ещё бы оглядывался на мейнстрим)
Язык С дает ровно столько абстракции, сколько её нужно, для программирования на распространенных языках с синтаксисом, как у С - C / C++ / C# / php / perl / java и т.д.


"Сравнение 72 реализаций языков программирования"
Отправлено afiskon , 01-Июн-09 14:33 
Если я правильно понял, как это интерпретировать, Ruby и Python ни на что не годятся. Так и знал.

"Сравнение 72 реализаций языков программирования"
Отправлено XoRe , 01-Июн-09 14:47 
>Если я правильно понял, как это интерпретировать, Ruby и Python ни на
>что не годятся. Так и знал.

Угу. Продолжайте писать на brainfuck'е =)


"Сравнение 72 реализаций языков программирования"
Отправлено F , 01-Июн-09 14:56 
Годятся в случае, когда задача не тяжелая и производительность не критична, как и другие скриптовые языки.

"Сравнение 72 реализаций языков программирования"
Отправлено Abu , 01-Июн-09 15:07 
А правильно ли будет некую логику, например, в игре типа Heroes Might and Magic, писать на скриптовых языках, а оставшуюся критичную часть (вывод графики) - С/C++ ? И - какое соотношение будет критичных частей кода к некритичным в такой игре?

Мне просто иногда кажется, что важность С/С++ в том же игрописании слегка преувеличена.


"Сравнение 72 реализаций языков программирования"
Отправлено Аноним , 01-Июн-09 15:21 
Афайк, в игрописании не больно-то и практикуют сплошные си.
Движек да, С/С++, а игровая логика на каком-нить lua.

"Сравнение 72 реализаций языков программирования"
Отправлено vitek , 01-Июн-09 16:00 
>Афайк, в игрописании не больно-то и практикуют сплошные си.
>Движек да, С/С++, а игровая логика на каком-нить lua.

но движок то на С/С++. :-D


"Сравнение 72 реализаций языков программирования"
Отправлено XoRe , 01-Июн-09 19:23 
>А правильно ли будет некую логику, например, в игре типа Heroes Might
>and Magic, писать на скриптовых языках, а оставшуюся критичную часть (вывод
>графики) - С/C++ ? И - какое соотношение будет критичных частей
>кода к некритичным в такой игре?
>
>Мне просто иногда кажется, что важность С/С++ в том же игрописании слегка
>преувеличена.

На C/C++ пишется движок.
А AI (искуственный интеллект), GUI (интерфейс) и прочие вещи можно писать на чем угодно.
На lua, python, perl.
Да хоть на php )

Фишка в том, что компании часто покупают готовый графический движок.
А все AI/GUI и прочая пишут свои, на чем им нравится.
Причем компания может оставить эти скрипты в виде простых файлов (не шифровать).
И тогда энтузиасты пишут всякие моды.


"Сравнение 72 реализаций языков программирования"
Отправлено 2Nike , 01-Июн-09 19:35 
>А правильно ли будет некую логику, например, в игре типа Heroes Might
>and Magic, писать на скриптовых языках, а оставшуюся критичную часть (вывод
>графики) - С/C++ ? И - какое соотношение будет критичных частей
>кода к некритичным в такой игре?
>
>Мне просто иногда кажется, что важность С/С++ в том же игрописании слегка
>преувеличена.

Игровым программистам платят меньше, поэтому и идут туда те, кто кроме C++ ничего не знает(Дай бог, чтобы это на нормальном уровне знал).


"Сравнение 72 реализаций языков программирования"
Отправлено MiG , 01-Июн-09 22:15 
>Игровым программистам платят меньше, поэтому и идут туда те, кто кроме C++ ничего не >знает(Дай бог, чтобы это на нормальном уровне знал).

Ну, если человек __хорошо__ знает C++, то всё остальное ему уже не особенно и нужно. ;-)


"Сравнение 72 реализаций языков программирования"
Отправлено Gra2k , 02-Июн-09 01:35 
Типа консоль, кофе и можно денег не платить? Как с вами связаться ? есть работенка!

"Сравнение 72 реализаций языков программирования"
Отправлено Юниксоид , 01-Июн-09 15:26 
Тролль ?

"Сравнение 72 реализаций языков программирования"
Отправлено afiskon , 01-Июн-09 15:28 
Программист Perl ;)

"Сравнение 72 реализаций языков программирования"
Отправлено XoRe , 01-Июн-09 19:24 
>Программист Perl ;)

Программисты Perl обычно ругаются на php =)

P.S.
Вы ничего не подумайте, я сам пишу на Perl)


"Сравнение 72 реализаций языков программирования"
Отправлено d , 07-Июн-09 19:54 
>Программисты Perl обычно ругаются на php =)

а то, постоянно и очень сильно. и в большенстве своем этому способствуют не столько сам язык, сколько разработчики и переход от одной версии к другой.


"Сравнение 72 реализаций языков программирования"
Отправлено FreewareMatter , 01-Июн-09 14:40 
Мне понравился Си, РНР.

"Сравнение 72 реализаций языков программирования"
Отправлено аноним , 01-Июн-09 17:40 
> верхний левый угол которого будет соответствовать быстрым, но усложненным
> нижний правый угол будет привязан к элегантным, но медленным, скриптовым языкам

Я так понимаю, по оси X - элегантность, по оси Y - скорость.

> В верхнем правом углу разместятся устаревшие языки, а в нижнем левом - идеальные языки, быстрые и удобные.

Тогда тут все должно быть ровно наоборот.


"Сравнение 72 реализаций языков программирования"
Отправлено аноним , 01-Июн-09 17:44 
Прочитал. Оси - тормознутось и размер кода :)

"Сравнение 72 реализаций языков программирования"
Отправлено аноним , 01-Июн-09 22:42 
зашибись тесты! значит на пхп в несколько процессов идет обработка http://shootout.alioth.debian.org/u32q/benchmark.php?test=bi... а на перле в одно рыло? http://shootout.alioth.debian.org/u32q/benchmark.php?test=bi...
чудесно передергиваем!

"Сравнение 72 реализаций языков программирования"
Отправлено XoRe , 10-Июн-09 00:41 
>зашибись тесты! значит на пхп в несколько процессов идет обработка http://shootout.alioth.debian.org/u32q/benchmark.php?test=bi... а
>на перле в одно рыло? http://shootout.alioth.debian.org/u32q/benchmark.php?test=bi...
>чудесно передергиваем!

Кстати да, +1.
Не осилили переписать на Perl?


"Сравнение 72 реализаций языков программирования"
Отправлено pro100master , 01-Июн-09 23:41 
похоже, что авторы решили проделать огромную, но пустую и ненужную работу, чтобы убить время. Подобные операции обычно жутко оптимизируются. И зачем пихать их в скрипты, которые не то, что не в курсе про память, они вообще интерпретируются. И еще одна странность - обычный для таких штук Фортран обошли стороной. Нипонятнооо...

"Сравнение 72 реализаций языков программирования"
Отправлено Аноним , 02-Июн-09 02:46 
> обычный для таких штук Фортран обошли стороной. Нипонятнооо..

Чего тут непонятного, это не универсальный язык. Он заточен исключительно под расчеты -- все счетные тесты будут лежать в левом нижнем углу отдельно от всех. В счетном классе задач фортран обгоняет все языки. А вообще тест -- дерьмо. Кобола нет, смолтока нет, лиспа нет.


"Сравнение 72 реализаций языков программирования"
Отправлено pro100master , 02-Июн-09 09:15 
>> обычный для таких штук Фортран обошли стороной. Нипонятнооо..
>
>Чего тут непонятного, это не универсальный язык. Он заточен исключительно под расчеты
>-- все счетные тесты будут лежать в левом нижнем углу отдельно
>от всех. В счетном классе задач фортран обгоняет все языки. А
>вообще тест -- дерьмо. Кобола нет, смолтока нет, лиспа нет.

это понятно. Но и задачка не "универсальная", а счетная. Да и языки, в таком случае, там тоже далеко не все универсальные. Т.е. мне не понятны 2 вещи: что хотел показать автор с практической точки зрения и чем обоснован его выбор. :)


"Сравнение 72 реализаций языков программирования"
Отправлено аноним , 02-Июн-09 10:18 
>> обычный для таких штук Фортран обошли стороной. Нипонятнооо..
>
>Чего тут непонятного, это не универсальный язык. Он заточен исключительно под расчеты
>-- все счетные тесты будут лежать в левом нижнем углу отдельно
>от всех. В счетном классе задач фортран обгоняет все языки. А
>вообще тест -- дерьмо. Кобола нет, смолтока нет, лиспа нет.

кроме кобола все вышеперечисленное есть. не в диаграмме, в результатах, которые можно между собой сравнить. и фортран, и лисп, и смолтолк. разуваем глаза и смотрим внимательнее http://shootout.alioth.debian.org/


"Сравнение 72 реализаций языков программирования"
Отправлено uZver , 02-Июн-09 00:29 
странно, но java в сравнении не увидел. наверное выше всеких похвал и сравнений ;)

"Сравнение 72 реализаций языков программирования"
Отправлено firefox , 02-Июн-09 02:00 
третий ряд третья строка слева)

"Сравнение 72 реализаций языков программирования"
Отправлено F , 02-Июн-09 14:49 
Там их много: java, javaclient, java14, gcj, может ещё что-нибудь не заметил.

"Сравнение 72 реализаций языков программирования"
Отправлено F , 02-Июн-09 15:10 
Интересно, там есть ссылка на какой-то обновленный вариант:
http://gmarceau.qc.ca/blog/uploaded_images/size-vs-speed-vs-...
Java там в первой колонке!