LINUX.ORG.RU

CL быстрее прочих :)


0

3

Новый, и как всегда красивый, пример кодогенерации от swizard

http://swizard.livejournal.com/158763.html

на этот раз решение задачи http://shootout.alioth.debian.org/u32q/benchmark.php?test=fannkuchredux&lang=...

★★★★★

Последнее исправление: psv1967 (всего исправлений: 1)

лисперов можно поздравить - они нашли единственную задачу, для которой поленились написать решение на С и С++, и сразу этим воспользовались

aho
()

Когда лисп-фанбои осознают, что главная проблема лиспа - лисп-фанбои?

anonymous
()

> CL быстрее прочих :)

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

archimag ★★★
()
Ответ на: комментарий от archimag

запутанным, спутанным, путанным... пута в общем :)

psv1967 ★★★★★
() автор топика
Ответ на: комментарий от creepnee

наоборот, не было решения на лиспе именно этой задачи.

psv1967 ★★★★★
() автор топика
Ответ на: комментарий от anonymous

главная проблема ананимуса жирные, лоснящиеся, несмотря на это не лезущие никуда, онанимусы

psv1967 ★★★★★
() автор топика
Ответ на: комментарий от aho

дык напишы ищо и ты -> чистый профит для всех

psv1967 ★★★★★
() автор топика
Ответ на: комментарий от antony986

укрепляйте сами знаете что :)

psv1967 ★★★★★
() автор топика
Ответ на: комментарий от Divius

> Как только не изгаляются лисперы

Что за манера отождествлять «все лисперы», «все бабы», «все негры», и т.п. Как бы не от большого ума такое...

archimag ★★★
()

Очередной унылый лиспосрач. Почти все уверены что лисп не нужен. Лисперы пытаются доказать что они нужны, ведь если в это хоть кто-то будет верить, то будет работа на любимом ЯП. Ситуация не меняется, мнения не меняются.

vertexua ★★★★★
()
Ответ на: комментарий от vertexua

> Очередной унылый лиспосрач. Почти все уверены что лисп не нужен. Лисперы пытаются доказать что они нужны, ведь если в это хоть кто-то будет верить, то будет работа на любимом ЯП. Ситуация не меняется, мнения не меняются.

очередной унылый троль, почти все уверены что он не нужен. Троль пытается доказать что он нужен, если в это хоть кто то будет верить, то будет любимая еда для троля. Ситуация не меняется :(

будет забавно если программа [\зачеркнуть гильберта] swizard(а) по порабощению шотаута будет воплощена в жизнь :)

psv1967 ★★★★★
() автор топика
Ответ на: комментарий от vertexua

Детский лепет. Есть профессионалы, выбирающие язык под задачу. Есть быдлокодеры, задрачивающие пару язычков на любых задачах.

/thread

anonymous
()
Ответ на: комментарий от vertexua

> Очередной унылый лиспосрач.

Очень уныло...

Почти все уверены что лисп не нужен.


На примере портежей в Gentoo совершенно отчётливо наблюдал, что «всем» вообще ничего не нужно и если устроить голосование на предмет «нужности» того или иного пакета, то подавляющее большинство в подавляющем количестве случаев скажет «ненужно».

Лисперы пытаются доказать что они нужны


Хм, моё руководство в моей нужности не сомневается, вроде доказано всё уже.

Ситуация не меняется, мнения не меняются.


GA говорит мне совершенно об обратном, после каждого «не унылого» лиспосрача колличество посещений lisper.ru (в долговременной перспективе) несколько увеличивается.

archimag ★★★
()
Ответ на: комментарий от psv1967

> будет забавно если программа [\зачеркнуть гильберта] swizard(а) по порабощению шотаута будет воплощена в жизнь :)

на предыдущей задаче он проиграл С в 27 раз:

http://shootout.alioth.debian.org/u32q/performance.php?test=chameneosredux

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

aho
()
Ответ на: комментарий от aho

> шансов побороть С( и С++ ) на остальных задачах у него маловато

Это вообще глупо, соревноваться с C в скорости, ибо CL выбирают не по причинам быстродействия.

archimag ★★★
()
Ответ на: комментарий от aho

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

В конце концов нашел что в sbcl не хватает ручек крутить affinity. Могут и запилить в конце концов.

А при кодогенерации вообще всё равно какой код генерить, можно и C. :)

И в этой задаче не было именно варианта на CL.

psv1967 ★★★★★
() автор топика
Ответ на: комментарий от vertexua

> Почти все уверены

Отучаемся говорить за всю сеть.

ugoday ★★★★★
()
Ответ на: комментарий от archimag

Да большинству салопроизводителей плевать на области применения языков, дай только покричать «не нужно».

whoami
()
Ответ на: комментарий от archimag

> Это вообще глупо, соревноваться с C в скорости

CL выбирают не по причинам быстродействия.


на том же shootout сравнивают еще размер кода и потребляемую память

по скорости лучшие С/С++/Java
по памяти - Pascal/C/C++
по размеру кода - Python, Ruby, Perl

т.е. написать код быстрее всего на том же питоне( не самый плохой вариант как язык сам по себе ), написать просто быстрый код проще на Java, написать супер-пупер оптимизированный код - на С/С++, для всех этих языков есть хорошие библиотеки на любой вкус, так зачем выбирают CL?

aho
()
Ответ на: комментарий от aho

«просто быстрый код» vs «написать код быстрее» таки вызвал трещину в шаблоне :), надо укреплять блин однако.

psv1967 ★★★★★
() автор топика
Ответ на: комментарий от aho

... ну и «C/C++» тоже неплохая попытка.

psv1967 ★★★★★
() автор топика
Ответ на: комментарий от aho

> зачем выбирают CL?

Затем, что он позволяет реализовать:

а) каждый из этих подходов;

б) каждый из этих подходов в разных частях одного проекта;

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

ugoday ★★★★★
()
Ответ на: комментарий от aho

... и кстате когда будет программа по печению блинчиков на «C/C++»?

psv1967 ★★★★★
() автор топика
Ответ на: комментарий от psv1967

> «просто быстрый код» vs «написать код быстрее» таки вызвал трещину в шаблоне :)

ну так очевидно же - если надо решить задачу быстро, то берешь питон и реализуешь критичные места на С( и то не факт что понадобится ), если надо уперется в скорость работы программы - то сразу берешь С/C++/Java( на С++ и Java проще приделать кроссплатформенный гуй, работу с БД, сетью и т.д. )

aho
()
Ответ на: комментарий от aho

> ну так очевидно же - если надо решить задачу быстро, то берешь питон и реализуешь критичные места на С( и то не факт что понадобится )

Этак не заметишь, что написано питон, а не схема, и хочется воскликнуть: «Мистер Столман! Это Вы?!»

:)

psv1967 ★★★★★
() автор топика
Ответ на: комментарий от aho

> берешь питон и реализуешь критичные места на С

Вариант «берёшь cl и пихаешь С в бутылочные горловины» вызывает релегиозную оторопь?

ugoday ★★★★★
()
Ответ на: комментарий от ugoday

хе хе ... на это раз первый я :)

psv1967 ★★★★★
() автор топика
Ответ на: комментарий от aho

> т.е. написать код быстрее всего на том же питоне

( не самый плохой вариант как язык сам по себе )


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

написать просто быстрый код проще на Java,


Гы, проще и Java у меня вместе никак не складываются, что вы таки хотели сказать?

так зачем выбирают CL?


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

archimag ★★★
()
Ответ на: комментарий от ugoday

> Вариант «берёшь cl и пихаешь С в бутылочные горловины» вызывает релегиозную оторопь?

питон как минимум читабельней

aho
()
Ответ на: комментарий от aho

> если надо решить задачу быстро, то берешь питон и реализуешь

критичные места на С


Ещё раз: разработка на CL более эффективна (с точки зрения скорости разработки), чем на Python, а C при этом вообще обычно не нужен (получается двойной профит). Верно то, что для Python больше библиотек, но в моей предметной области у меня сейчас всё есть, так что смысла использовать Python нет никакого.

archimag ★★★
()
Ответ на: комментарий от aho

т.е. написать код быстрее всего на том же питоне( не самый плохой вариант как язык сам по себе ), написать просто быстрый код проще на Java, написать супер-пупер оптимизированный код - на С/С++, для всех этих языков есть хорошие библиотеки на любой вкус, так зачем выбирают CL?

На самом деле, на CL писать сложный код быстрее, чем на Питоне (а лёгкий код вообще пофиг, на чём писать), и работает он сравнимо с индустриальным стандартом, т.е. Джавой.

Супер-пупер оптимизированный код пишут на ассемблере методом тыка, смотря на результаты замера после каждого тыка: тут префетч попробовали воткнуть, тут cmov чегой-то медленнее сравнения и двух загрузок оказался, тут местами два поля в структуре поменяли.

mv ★★★★★
()
Ответ на: комментарий от archimag

> то сам удивлялся насколько на CL получается проще и короче.

вы не поверите - но любой фанат Java/C++/Perl etc., когда переписывает код с другого языка, говорит ровно те же слова

Гы, проще и Java у меня вместе никак не складываются, что вы таки хотели сказать?


у вас Java вызвала какие-то затруднения? да - это не бейсик, но начать на ней писать гораздо проще чем на С, например, а С в свою очередь не пытается объять в себе столько парадигм как тот же CL

aho
()
Ответ на: комментарий от aho

а С в свою очередь не пытается объять в себе столько парадигм как тот же CL

Всепарадигменность Коммон Лиспа растёт из того факта, что язык программным образом наклоняется, практически, в любую сторону.

mv ★★★★★
()
Ответ на: комментарий от archimag

> Ещё раз: разработка на CL более эффективна

это вы себе доказываете? потому-что сказочный, компактный и высокопроизводительный код на CL почему-то «видят» только разработчики на лиспе, до рядового пользователя дебиана/адроида/мак ос ит.д. почему-то доходят только в массовых количествах «поделки» на питоне, джаве, С, PHP и т.д.

aho
()
Ответ на: комментарий от aho

> вы не поверите - но любой фанат Java/C++/Perl etc.,

когда переписывает код с другого языка, говорит ровно те же слова


Что-то я логики не уловил. И да, в тот момент опыта работы с Python у меня было намного больше, чем с CL.

у вас Java вызвала какие-то затруднения?


Да, рука болит столько кода набивать и в сон при этом жутко тянет.

archimag ★★★
()
Ответ на: комментарий от aho

где «блинчики» на С я вас спрашиваю?

psv1967 ★★★★★
() автор топика
Ответ на: комментарий от ugoday

> Вкусовщина --- не аргумент.

да-да, фанаты CL без устали постоянно повторяют, что код на CL читабелен - это все знают

aho
()
Ответ на: комментарий от archimag

> а на чём основаны ваши суждения?

а вы читайте до конца

aho
()
Ответ на: комментарий от aho

> код на CL читабелен - это все знают

У вас проблемы с чтением CL-кода?

ugoday ★★★★★
()
Ответ на: комментарий от aho

> почему-то доходят только в массовых количествах «поделки» на питоне, джаве, С, PHP и т.д.

У меня на компе ничего написанного на жабе, а уж тем более на пыхпыхе нет.

ugoday ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.