LINUX.ORG.RU

Ruby - lisp для неосиливших lisp^W^W cмертных.

anonymous
()

ты лучше скажи что ты собрался изображать

shty ★★★★★
()

Лисп, куда нормальней? Есть конечно C++, но это ужас.
Ну конечно nemerle ещё.

Artificial_Thought ★★★★
()

Common lisp, racket, ruby. Олсo, define метасистема.

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

А разве он перестал быть маргинальщиной? Хотя раз тсу нужно метапрограммирование, то это явно не прикладной проект, так что и d пойдет.

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

А про Template Haskell или Racket ты такого спросить не хочешь? Да и про CL тоже.

Раскрываю макросы до седьмого уровня квазицитирования по фотографии.

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

ну что вы, в питоне нормальное мп, хотя в руби мощнее, да

wwwsevolod
()

только нормальный, а не лисп.

Я вот тоже думал, что Лисп - это красноглазие и ретроградство. До тех пор, пока не познал его.

Поэтому не насилуй мозг - изучай лисп.

Deleted
()

Трудно себе представить метапрограммирование вне лиспа. Все остальное - не то. Тут важны не только сами макросы, но важно и то, как устроены остальные элементы языка. Например, чем больше я познаю Common Lisp, тем больше удивляюсь его продуманности в деталях.

dave ★★★★★
()

Интересно, а расширения GHC DataKinds, PolyKinds и TypeFamilies за метапрограммирование прокатят или еще нет?

Macil ★★★★★
()
Последнее исправление: Macil (всего исправлений: 1)
Ответ на: комментарий от jtootf

в самом деле

Метапрограммирование на тикле - это изврат, тикль не проектировался для этого и не предназначен. Не спорю, что то можно соорудить по-мелочи, видел примеры в wiki.tck.tk, но никакой «развитой метасистемы» у Tcl нет.

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

Обоснуй. Как ты будешь реализовывать эффективные, компилируемые eDSL без метапрограммирования?

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

Неверно. В C++ метапрограммирование вполне употребимо, если уметь его готовить. В Tcl оно вообще основа всего, и никто не жалуется. В CamlP4 оно очень даже приличное, во многом чище всяких там Лиспов. Template Haskell тоже ничего, хотя с ним я мало игрался.

Так же следует помнить, что метапрограммирование - это еще и всякие разные препроцессоры и кодогенераторы. Yacc это тоже пример метапрограммирования. GNU Autotools - вообще крайний, маниакальный вариант метапрограммирования, а кто назовет это «ад и погибель», тот не имел дел со scons и cmake.

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

А что тебе конкретно нужно-то для метапрограммирования? Квазицитирование? Так оно практически везде теперь есть. Homoiconicity? Не нужно, честно. Функция eval? Так оно теперь везде есть.

Лисп устарел и сдох. Get over it.

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

Раскрываю макросы до седьмого уровня квазицитирования

Ты маргинал штоле? O_o

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

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

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

Да, а что? Символы и скобки, код как данные, основа метапрограммирования, дар и проклятие лиспа. Не пародии на иероглифы с университетской доски же?

ados ★★★★★
()

Forth, куда уж метасистемнее :) Lisp, Smalltalk, Joy

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

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

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

Не аргумент. Вообще.

Лисперы все такие, да?

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

Да, а если еще более уродливая экзотика нужна, то pfront.

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

Это языки, у которых нашлось хоь какое-то место, не обязательно с практичным применением, но нашлось. А д как был непонятно чем, так вроде и остался. Не системный, не прикладной (полторы сотни корявых бинлингов к популяреым либам не в счет), только Александреску побаловаться, штоле?

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

Это языки, у которых нашлось хоь какое-то место, не обязательно с практичным применением, но нашлось

«Какое-то» место нашлось и у D.

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