LINUX.ORG.RU

Приходилось ли вам писать на Лиспе?


2

2

Ну, что ж, в Development так в Development, хотя Лисп давно перестал быть мемом одного лишь Development'а (и даже одного ЛОРа). Итак, сабж!

[ ] Да, профессионально и за деньги
[ ] Да, just for fun и для самообразования
[ ] Да, участвовал в opensource-проекте
[ ] Да, пилил скрипты Emacs/GIMP/AutoCAD/Lilypond etc.
[ ] Да, в рамках образовательной работы (лаба, курсовик, диплом)
[ ] Да, в рамках академической работы (диссертация, статья, монография)
[ ] Да, мне сказали, что лисперов любят девушки
[ ] Нет, но собираюсь
[ ] Нет, и не собираюсь
[ ] Вообще-то я Джон МакКарти, а вы кто такие?
[ ] в Советской России Лисп пишет на тебе!

Приветствуются развернутые ответы и верифицируемые пруфлинки. Например, на какую фирму работали, в каком конкретно opensource-проекте участвовали, какая была тема научной работы, помогло ли с девушками, и тому подобное. INB4 буквоедов: под «лиспом» подразумеваются все языки семейства: Scheme, CL, Clojure и прочие.

★★

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

Вот один лиспер пишет, что Лисп сложный
Приходилось ли вам писать на Лиспе? (комментарий)
Другой пишет, что «Лисп чрезвычайно прост».
Кому верить?

Обоим. Синтаксически лисп чрезвычайно прост (куда уж проще-то?). Семантически лисп сложен, потому что нужно ознакомиться с новыми абстракциями и начать их использовать. С другими ЯВУ, отличающимися от привычного Си не парой сахарных плюшек, кстати, то же самое. Попробуйте после Си освоить Хаскель - всё та же самая жопа с пониманием новых вещей, плюс ещё и синтаксис многообразный.

Это как велосипед: ездить на велосипеде чрезвычайно просто, но в начале обучения все падают. И те, кто после первого падения решил на велосипеде больше не ездить, либо вообще перед перспективой сделать себе больно зассал даже в седло садиться, также изливают на форумах понос про какой-нибудь фристайл. Типа, если это так чётко и элитно, почему не все велосипедисты поголовно фристайл крутят? Почему велосипедные конторы ситибайки продолжают клепать, а не одни BMX'ы?

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

Интересная мысля. Значит если Лиспу сделать читаемый синтаксис, то он станет ещё одним *обычным* языком

Если тепловозу оторвать колёса, кораблём он не станет, но тепловозом тоже не останется. Многие, если не все, идеи в лиспе завязаны на префиксной нотации.

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

>Во-первых, синтаксис Лиспа уже предельно читаем. Никаких инфиксных операторов

Человечество ошибается, используя в жизни везде инфиксную нотацию? Цивилизация пошла по неправильному пути?

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

Пока libastral не допили решения приходиться принимать людям, они тоже могу ошибаться и т.п.

Кстати, вас увидит тот факт, что один из компонентов MS Visual Studio 2003 был реализована на Allegro Common Lisp? ;)

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

Человечество ошибается, используя в жизни везде инфиксную нотацию? Цивилизация пошла по неправильному пути?

Ты за всё человечество не говори. Азиаты пишут снизу вверх, справа налево, иероглифами. Ну, классически так пишут.

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

yet another anonymous

> ... И история использования Common Lisp в широких массах, которая началась году этак в 2003 ...

o_0 Я только школу заканчивал, а Common Lisp внезапно увеличивает популярность. А почему? А почему именно в 2003? А это из ваших личных ощущений или где-то статистику посмотрели? А ссылками не поделитесь, а то google ничего с lisc с 2003 годом не может связать

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

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

Пишите.

Поэтому мне интересно, как сделать на нем обычную гуй-прогу.

http://lisper.ru/articles/hello-world-with-cl-gtk2

Смотрел уже. Оно на винде тоже запустится?

http://clgtk2.wordpress.com/2009/10/04/progress-update/

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

Но инфиксная математика остаётся? Мы же не про тексты и литературу, а про математические выражения.

anonymous
()
Ответ на: yet another anonymous от anonymous

yet another anonymous

> ничего с lisc с 2003 годом

lisp с 2003 годом

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

> Но инфиксная математика остаётся?
Остается в школе.

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

Ну, человечество себе вообще много странного, бесполезного и даже вредного говна напридумывало - религии, табакокурение и т.д.

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

Да ну? А я-то все десять страниц срача считал,что мы пропрограммирование.

Математика декларативна, там большой разницы от синтаксиса не будет. Сделай хоть префиксную хоть постфиксную - ничего не изменится. ЯП таким свойством по ряду причин похвастаться не могут.

a = b + c в C и математике означают совершенно разные вещи, так зачем так стремться в тому, чтобы одинаково их записывать?

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

Но инфиксная математика остаётся? Мы же не про тексты и литературу, а про математические выражения.

Арифметика, вы имеете в виде? cos(sin(log(x))) на инфиксное 2 + 2 не очень похоже. Фунции в математике записываются в префиксном виде: сначала название функции, потом её аргументы.

mv ★★★★★
()

Я сходил за попкорном

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

> Арифметика, вы имеете в виде? cos(sin(log(x))) на инфиксное 2 + 2 не очень похоже. Фунции в математике записываются в префиксном виде: сначала название функции, потом её аргументы.

да - они содрали запись 1:1 из С/С++ ;)

lester ★★★★
()

Страниц 20 срача еще обеспечено

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

Кстати, функции вроде + и * в лиспе не совсем корректно считать аналогами соответствующих операторов в алголоподобных языках.
Просто значки ∑ и ∏ не совсем удобно набирать на среднестатистической клавиатуре.

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

+(2, 2) Ы?

Можно упростить и написать сразу

(+ 2 2)
=)

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

и что же читаемого тут + - - * + X H Gh 68 L 32 ?

В какой книге по математике так пишутся формулы? У какого народа? Может быть у китайцев или японцев?

anonymous
()
Ответ на: yet another anonymous от anonymous

> А почему? А почему именно в 2003? А это из ваших личных ощущений или

где-то статистику посмотрели?


Из личных ощущений. Тогда я ещё CL не занимался (я тогда вообще только начинал программированием заниматься). Просто позже немного смотрел на историю появления разных библиотек, да активность в списках рассылки. Ключевая дата - декабрь 99 года, когда форкнули CMUCL (который было проблематично даже собрать постороннему человеку) и появился SBCL. Товарищам потребовалась время, что бы немного разгрести муссор, потом что бы на них начали ориентироваться. 2003 это условная дата, она не связана с каким событием.

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

Ничего, но что-то вас совсем не в ту степь понесло. Здесь операнды с операторами никак не связать с первого взгляда, а в инфиксной, как и лисповой, нотации легко.

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

yet another anonymous

Понятно. Интересно.

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

Ну хорошо, назовите это не инфиксное, а классическое из математической литературы

G(cos(sin(log(x + 4))), 45 , L, 3 + U + i) / H(p)

То есть подходящие под оперделение «читаемое». Такое, как оно везде пишется в литературе.

anonymous
()

yet another anonymous

Раз пошло такое дело, реквестирую язык Forth и превосходство плюс прекрасную читаемость постфиксных операций.
Для затравки: http://lurkmore.ru/Forth

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

Да сдался вам этот синтаксис, если через 50 лет его всё ещё используют, то наверное в этом есть смысл.

P.S. Впрочем, показательно, что кажется только синтаксис и осталось обсуждать, ибо по прочим всем вопросам был приведён набор ссылок, на которые анонимусы так ничего и не смогли возразить.

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

То есть подходящие под оперделение «читаемое». Такое, как оно везде пишется в литературе.

Человеческие взгляды на правильность тех или иных вещей, к счастью, меняются. В славное средневековье за круглую Землю легко на костёр попасть вот можно было. Но костёр ведь правду не удержит, ибо она в натуре круглая. Так и инфиксный оператор - это всего лишь частный случай соответствующей функции.

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

P.S. Впрочем, показательно, что кажется только синтаксис и осталось обсуждать, ибо по прочим всем вопросам был приведён набор ссылок, на которые анонимусы так ничего и не смогли возразить.

Умелый контртроллинг решает :)

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

Отвечаю Выражение G(cos(sin(log(x + 4))), 45 , L, 3 + U + i) / H(p) одинаково пишется как в литературе, так и в С, Паскале, Жабе и т.п. Запишите это на Лиспе, мне интересно посмотреть насколько оно там читаемое будет. Разубедите в нечитаемости Лиспа дядю.

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

Гуй-проги не нужны. Нужны проги и гуи отдельно.

полностью разделяю данную точку зрения, например

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

Европейское средневековье завралось. Кругая Земля была известна ещё 4-5 веках до нашей эры в Греции.

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

> Разубедите в нечитаемости Лиспа дядю.

В этом нельзя разубедить, если даже сам МакКарти, как я писал выше, планировал изначально использовать M-выражения, которые должны были транслироваться в «скобочки». В читаемости и удобстве «скобочек» можно убедиться только на практике, как это произошло с МакКарти (вероятно к немалому его удивлению) и последующими лисп-хакерами.

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

А чего возражать по сцылкам? Ну сделали на Лиспе 10 проектов и всё. А на жабах, С++, С крутятся десятки миллиардов зелени.

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

Просто значки ∑ и ∏ не совсем удобно набирать на среднестатистической клавиатуре

вот это, кстати, отвратительно. когда, наконец, в ЯП появится полноправный Unicode? чтобы без ASCII-art'а, а с нормальными стрелочками, сигмами, тензорными произведениями и прочими символами Лежандра

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

>вот это, кстати, отвратительно. когда, наконец, в ЯП появится полноправный Unicode? чтобы без ASCII-art'а, а с нормальными стрелочками, сигмами, тензорными произведениями и прочими символами Лежандра

Fortress? Только вот как ты это набирать будешь?

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

МакКарти это хорошо и М-выражения тоже, а как это выражение в Лиспе будет?

G(cos(sin(log(x + 4))), 45 , L, 3 + U + i) / H(p)

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

Ну да, сначала утверждалось что вообще ничего не было. Теперь вот, внезапно, что 10 проектов. Думаете стоит продолжать дискуссию что бы вы удосужились хотя посчитать то, что указано на сайте franz?

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

>Только вот как ты это набирать будешь? Выпустят спец. клаву для программеров. Штурвалы же выпускают с джойстками и т.п. хренотенью.

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

G(cos(sin(log(x + 4))), 45 , L, 3 + U + i) / H(p)

(/ (G (cos (sin (log (+ x 4)))) 45 L (+ 3 U i)) (H p))
Либо, что вероятнее
(/ (G (cos (sin (log (+ x 4))))
      45 L (+ 3 U i))
   (H p))

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

>Выпустят спец. клаву для программеров.

На весь юникод? 8-0

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

Fortress?

не смотрел ещё

Только вот как ты это набирать будешь?

emacs'ом, само собой :) хотя самое крутое в этом смысле, что я видел - это Leksah. удобно, и заметно повышает читаемость кода

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

Одна из причин, по которым лично я к Лиспу симпатий не испытываю. Вместо классики, идентичной в литературе и языках типа С

G(cos(sin(log(x + 4))), 45 , L, 3 + U + i) / H(p)

писать

\ (/ (G (cos (sin (log (+ x 4)))) 45 L (+ 3 U i)) (H p))

что ни разу не встречал в физико-математической литературе.

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

не смотрел ещё


ну как-бы у того-же sbcl symbols уникодные - [пере]определяй себе что хочешь

emacs'ом, само собой :)


ну именно его «фортресовцы» и предлагали раньше
как теперь - не знаю

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

>Одна из причин, по которым лично я к Лиспу симпатий не испытываю.

Это явно отговорка/самооправдание. Причины где-то значительно глубже ;)

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

когда к лиспу приделают __человеко__читаемый синтаксис?


Во-первых, напиши-ка критерии человекочитаемости языка программирования.
Во-вторых: «Проекты, предлагающие программирование на естественном языке, гибельны по своей сути.» (ц) Дейкстра.
В-третьих, ты внезапно обнаружил, что для программирования нужна голова?
В-четвёртых, не путай общие проблемы программирования с личными половыми, а также со своими незнанием, ограниченностью, незаинтерисованностью и т.п.

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