LINUX.ORG.RU

Во как тут...

Можно в песочницу вернуться?.. :)

Лисп не изучил :), но 5 копеек вставлю: на car и cdr действительно много времени не надо. И все остальное можно вывести из них. Но... Вы хотите на сосбственной шкуре пройти всю историю лиспа? (назовите другой язык, имевший столько реализаций/разновидностей, и все это выведено из тех же car и cdr :)

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

Нет, маловато будет. Теперь к бульену добавим CLOS с MOP-ом. Что получим? Можем получить красивый работаюший исходный код, который понять без "декомпиляции" невозможно.

Но это практически не встречается. И так практически ни кто не пишет.

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

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

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

понимаешь в чем вся фигня. при изучении лиспа ВАЖЕН и ИНТЕРЕСЕН сам процесс изучения. буквально с первых часов(!) знакомства с лиспом человека начинает шторить по мозгам и не отпускает ... никогда

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

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

для того чтобы начать писать полезные программы на лиспе, знания всего common lispa в который понапихано всего и сразу, совсем не нужно и даже вредно .. начинать практиковать писанину на лиспе нужно в тех самых узких рамках что я писал вначале - это можно сделать например на базе intelib lisp, для этого совершенно не нужно уйма времени. На самом деле всё будет понятно по результатом внедрения intelib lisp в обучении ..

макры это уже совершенно новый уровень, макры нужны чтобы показать как стереть грань между программой и данными, научить эффективной bottom-top разработке, этому научишься только лишь с опытом который уже и потребует время

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

> макры это уже совершенно новый уровень, макры нужны чтобы показать как стереть грань между программой и данными, научить эффективной bottom-top разработке, этому научишься только лишь с опытом который уже и потребует время

Все зависит от точки зрения... Ладно, давай попробуем сойтись вот на чем: я имел в виду common lisp, коий без макр, clos-а и mop-а (хоть он и не входит в стандарт) не мыслю :) Или иными словами - знание комманд не есть есть знание языка (как и с обычными языками: словарный запас - дело хорошее, но еще не дает возможности общаться - "пользоваться языком").

Ладно, заканчиваю. Это даже на спор не похоже... ;)

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

> Все зависит от точки зрения... Ладно, давай попробуем сойтись вот на чем: я имел в виду common lisp, коий без макр, clos-а и mop-а (хоть он и не входит в стандарт) не мыслю :) Или иными словами - знание комманд не есть есть знание языка (как и с обычными языками: словарный запас - дело хорошее, но еще не дает возможности общаться - "пользоваться языком").

хорошо

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

кстати ничего полезного в провидении синонима между lisp и common lisp нету. а уж clos к lisp имеют совершенно посредственное отношение, просто как удобное средство слава богу не противоречащее модели вычислений

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

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

Продолжаем спор ни о чём :)

> кстати ничего полезного в провидении синонима между lisp и common lisp нету.

Возможно. Но тогда вообще лучше не говорить о знании лиспа (трудно себе представить, что кто-то говорит - я знаю языки романской группы, хотя наверняка есть и такие кадры), а стоит говорить о знании конкретной версии - common lisp, e-lisp или любой другой.

Со своей стороны должен поправится, что говря lisp всегда имею в виду cl.

По той-же причине согласен, что lisp и clos практически никак не связаны, но хочу отметить, что из многих (всех?) реализаций cl выдрать clos физически невозможно :)

> а вот когда у тебя появляется набор слов/правил(пусть и вовсе не полный, а совсем маленький) с помощью которых ты уже можешь строить связные предложения - то всё ты уже начал в какой то мере знать язык

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

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

да мы не спорим, мы рассуждаем ..

> ...я бы сказал - в ничтожно малой мере. По-моему, "знание" языка подразумевает практически свободное общение на нем.

тут ведь дело вот в чём, какую бы ты не взял область "сободное общение" в этой области всяко придёт только с внушительным опытом, по сути разовьёт знание другого порядка - неосознаную компетенцию, поэтому в таком смысле слова "знание" сам вопрос "сколько времени у вас заняло изучение Лисп?" теряет смысл потому что совершенно очевидно что для достижения неосознаной компетенции в любой сфере требуется немалого времени .. поэтому я сделал вывод что имелось ввиду знание первого порядка - осознаная компетенция, не требующее значительного опыта или вовсе не требующее опыта

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

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

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

По-моему, аналогия с естественными языками в данном случае более уместна. Как следствие, "пол года усиленного изучения методом погружения" (если такое возможно при изучении языка программирования) - тот минимальный срок, который я могу воспринять без скепсиса.

Конечно, для минимального общения необходим очень небольшой запас знаний. Мне самому хватило месяца в Германии, чтобы выучить несколько десятков (или сотен) слов/выражений, достаточных для минимального (или, скорее, "экстремального") общения. Но это не дает мне права заявлять, что я знаю немецкий :) Даже на начальном уровне.

yyk ★★★★★
()

Всю жизнь

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