Левенчук пишет, что все серьёзные программисты мечтают программировать на фукнциональных языках. Не знаю, как серьёзные, а у меня лично никогда желания программировать на Лиспе не возникало. Нечеловеческий он какой-то. Пусть ворлоны на нём программируют.
Tags:
no subject
Даже перл в какой то мере функциональный язык ;)
no subject
no subject
no subject
no subject
no subject
no subject
no subject
no subject
вообще же большинство известных мне ¨серьёзных¨ программистов зачем-то считают нужным бравировать своим антиинтеллектуализмом (в том что касается собственно профессиональной деятельности), даже если на самом деле являются людьми вполне вдумчивыми.
и это не может не огорчать, да.
no subject
этот
no subject
no subject
no subject
либо разводишь меня, болезного, на флейм. :)
no subject
А добрый флейм тоже неплох бывает ;)
no subject
такова природа популярных заблуждений — хрен убьёшь...
no subject
Главное в Лиспе не функции, а макросы. А скобочки (точнее, представление программы в виде S-выражений) — это единственный способ делать нормальные макросы.
Естественно, речь идёт не о тех макросах, которые в C/C++. В лиспе макрос — это функция, которая на входе принимает одно S-выражение, а на выходе даёт другое. Т.е. все вычислимые функции доступны, а не просто подстановки в строках, как в C.
Другое дело, что ФП более удобно для написания таких вот функций, преобразующих одно выражение в другое :) Однако в Common Lisp есть и императивный ООП, и многое другое.
И ещё, надо заметить, что тот лисп, который изобрёл МакКарти, и тот, который существует сейчас (Common Lisp, Scheme) — это две большие разницы :) Я сейчас писал про современный.
no subject
А чем, собственно, макрос отличается от фукнции, кроме имени, я не совсем понял. Я, опять же, знаю, что в лиспе всё - список, и что функция (которая, в свою очередь, тоже есть список) есть операция над списками. Мне просто кажется не всегда удобным мыслить именно в этих терминах.
no subject
2. Не всё — список. Есть ещё массивы, структуры, хеш-таблицы, объекты. Есть ещё целые произвольной точности и комплексные числа. У вас устаревшие сведения :)
3. Обычные функции работают во время работы, а макросы — во время компиляции (поэтому тут и уместна приставка мета-). Конечно, макросы могут вызывать другие функции (в этом главное отличие от большинства других макросистем).
Простой пример: для того, чтобы включить в программу на C парсер, нужно вызвать отдельную утилиту, которая описание грамматики сконвертирует в код на C. А в Лиспе для этого нужно лишь написать соотв. макрос. Другой пример — автоматическое выведение типов а-la ML.
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
no subject
(no subject)
ага, а вот и флейм!
Re: ага, а вот и флейм!
Re: ага, а вот и флейм!
Re: ага, а вот и флейм!
Re: ага, а вот и флейм!
Re: ага, а вот и флейм!
Re: ага, а вот и флейм!
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
Re: ага, а вот и флейм!
опять об тоже место
Re: опять об тоже место
Re: опять об тоже место
Re: опять об тоже место
Re: опять об тоже место
Re: опять об тоже место
Re: опять об тоже место
Re: ага, а вот и флейм!
Re: ага, а вот и флейм!
Re: ага, а вот и флейм!
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
no subject
Сюда, быстро: http://www.paulgraham.com/
no subject
no subject
no subject
no subject
2) Функциональные языки - наиболее человечные из всех - потому как допускают наибольшую степень абстракции. Человек может писать то, что думает, не заморачиваясь над всякими отвратительными техническими деталями.
Однако, исходя из п.1. могу сделать вывод, что гражданин stas просто не знает, что такое функциональные языки. Он, похоже, совсем ни разу не программист.
no subject