LINUX.ORG.RU — Русская информация об ОС Linux

[#]  
ott

Новый номер журнала «Практика функционального программирования»

Вышел в свет четвертый выпуск журнала «Практика функционального программирования». В новом номере опубликованы следующие статьи:

  • Лисп — абстракции на стероидах. Виталий Маяцких.
  • Clojure, или «Вы все еще используете Java? тогда мы идем к вам». Алекс Отт.
  • Пределы выразительности свёрток. Виталий Брагилевский.
  • Сечения композиции как инструмент бесточечного стиля. Денис Москвин.
  • Мономорфизм, полиморфизм и экзистенциальные типы. Роман Душкин.

Обсуждение номера и отдельных статей

>>> Новый номер в разных форматах

Метки: clojure, lisp, журнал, программирование, пфп, фп

ott ***** (25.02.2010 19:30:40)
Проверено: anonymous_incognito (25.02.2010 21:41:44)
Juick

[#] Ответ на: комментарий от lester 26.02.2010 20:35:35  

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

А что SQL не поддерживает - так и не должно. SQL для всякой реляционной чепухи. СУБД, если ты не в курсе, не только реляционные в природе встречаются.

anonymous (26.02.2010 20:59:51)
[#] Ответ на: комментарий от anonymous 26.02.2010 20:50:26  

> Вы знаете, как обойти setq в лиспе? Вы занаете как помнять значение 'aaa?

anonymous (26.02.2010 21:00:37)
[#] Ответ на: комментарий от anonymous 26.02.2010 20:58:17  

> Утверждалось, что CL столь гибок, что позволяет
> программировать в любом стиле.


Кем утрвеждалось? Тут порой такое прочитать можно...

> А еще выяснилось, что далеко не все реализации хвостовые

> вызовы оптимизирут.


Конечно, ведь в практике императивного программирования это не очень-то и нужно. Впрочем, ведущие реализации всё оптимизируют.

archimag ** (26.02.2010 21:02:40)
[#] Ответ на: комментарий от anonymous 26.02.2010 20:59:51  

И кстати - мне кажется, что SQL и реляционщина - это пример того, что бывает, когда побеждают окодемеги. Такое же говно получилось бы, если бы победила функциональщина в языках программирования.

Всякие пустобрёхи-окодемеги доказали, что реляционная модель универсальна и на неё можно отобразить любую из существовавших тогда моделей. И народ повёлся. Стали клепать РСУБД в огромных количествах и всё переводить на них. А то, что это вызывает огромное количество практических проблем, осознали слишком поздно, когда SQL и связанное с ним говно стало стандартом де-факто.

Одно только радует во всей этой истории - то, что все подсели на SQL, а не на Datalog. Ведь всё могло быть гораздо хуже!

anonymous (26.02.2010 21:06:57)
[#] Ответ на: комментарий от anonymous 26.02.2010 20:57:15  
dave

Посмотрим. Но это был ответ на "... Но её в практическом, прикладном программировании просто нет, не было и не _предвидится_ ..". Хотя с учетом роста популярности LINQ можно и в первой части предложения усомниться.

Кстати, вопрос на засыпку. Откуда пошли генерики в C#? Даю подсказку. Только не надо вспоминать про плюсовые шаблоны.

dave ***** (26.02.2010 21:13:26)
[#] Ответ на: комментарий от dave 26.02.2010 21:13:26  

Из генериков в Java, конечно же. А что ими занимался тот же человек, который на досуге в F# играется, так это совпадение и к функциональщине никак не относится.

anonymous (26.02.2010 21:14:35)
[#] Ответ на: комментарий от dave 26.02.2010 21:13:26  
dave

Да, аду тоже не надо упоминать.

dave ***** (26.02.2010 21:16:29)
[#] Ответ на: комментарий от archimag 26.02.2010 21:02:40  

>> А еще выяснилось, что далеко не все реализации хвостовые >> вызовы оптимизирут. > > Конечно, ведь в практике императивного программирования это не очень-то и нужно. Впрочем, ведущие реализации всё оптимизируют.

Как то писал виртуальную машину для своей реализации Форта - оказалось очень удобно заложиться на хвостовые вызовы при правильных опциях gcc.

anonymous (26.02.2010 21:17:33)
[#] Ответ на: комментарий от anonymous 26.02.2010 21:14:35  
dave

> А что ими занимался тот же человек, который на досуге в F# играется, так это совпадение и к функциональщине никак не относится.

Это ты так про Дона Сайма или кого-то из его группы? :)

dave ***** (26.02.2010 21:17:46)
[#] Ответ на: комментарий от anonymous 26.02.2010 21:17:33  

> Как то писал виртуальную машину для своей реализации Форта

А зачем это вообще надо? Какой в этом практический смысл?

archimag ** (26.02.2010 21:24:47)
[#] Ответ на: комментарий от archimag 26.02.2010 21:24:47  

> А зачем это вообще надо? Какой в этом практический смысл?

Описание одной операции делается одной функцией, которая в конце вызывает диспетчер. Получилось эффективнее, чем возвращаться в диспетчер и вызывать следующую функцию.

anonymous (26.02.2010 21:33:59)
[#] Ответ на: комментарий от anonymous 26.02.2010 21:33:59  

Я не об этом, зачем вообще нужно писать виртуальную машину для своей реализации Форта? Зачем нужна своя реализация Форта?

archimag ** (26.02.2010 21:47:14)
[#] Ответ на: комментарий от archimag 26.02.2010 21:47:14  

Затем.

anonymous (26.02.2010 23:25:11)
[#] Ответ на: комментарий от anonymous 26.02.2010 14:02:10  
r

>где r отстаивал точку зрения, что у чисел есть состояния.

*аффтаритетно* Вас подводит память. Перечитайте тред.

r ***** (26.02.2010 23:47:24)
[#]  
rudchenkos

Спасибо большое авторам! С нетерпением жду каждого номера!

P.S. Есть желание отблагодарить ;)

rudchenkos * (27.02.2010 0:00:28)
[#]  

Надо было журнал "Элитарные языкм программирования" назвать :-)

anonymous (27.02.2010 7:53:28)
[#] Ответ на: комментарий от ott 25.02.2010 22:43:24  
yoghurt

Ааа... клево

А можно мне как человеку, планирующему заняться интеллектуальным анализом данных в будущем, поинтересоваться, какой выигрыш здесь дает использование clojure (либо других фяп) над мейнстримовыми языками, помимо распараллеливания?

Мне правда интересно :)

yoghurt ***** (27.02.2010 9:56:08)
[#] Ответ на: комментарий от rudchenkos 27.02.2010 0:00:28  
srj

>P.S. Есть желание отблагодарить ;)

http://fprog.ru/donate/

srj ** (27.02.2010 10:42:38)
[#] Ответ на: комментарий от archimag 26.02.2010 21:47:14  

>> Зачем нужна своя реализация Форта?

потому что
что может быть проще ?

kto_tama ***** (27.02.2010 10:50:20)
[#] Ответ на: комментарий от LamerOk 26.02.2010 19:16:08  
svr69

Re: Новый номер журнала «Практика функционального программирования»

там много арий на японском? сколько именно, не подскажете?

svr69 ** (27.02.2010 11:43:42)
[#] Ответ на: комментарий от yoghurt 27.02.2010 9:56:08  
ott

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

ott ***** (27.02.2010 12:30:35)
[#] Ответ на: комментарий от archimag 26.02.2010 21:47:14  
KRoN73

>Зачем нужна своя реализация Форта?

Я, например, в своё время JBForth делал из-за того, что это был самый простой способ рулить L2J-сервером из Lineage II-клиента :)

Ну и скрипты на нём проще, гибче, мощнее и быстрее скриптов на Jython были.

KRoN73 ***** (27.02.2010 12:38:36)

Re: Новый номер журнала «Практика функционального программирования»

Все. Японская версия.

LamerOk **** (27.02.2010 12:44:47)
[#] Ответ на: комментарий от archimag 26.02.2010 21:47:14  

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

anonymous (27.02.2010 13:13:54)
[#] Ответ на: комментарий от srj 27.02.2010 10:42:38  

>P.S. Есть желание отблагодарить ;)

Разве непонятно что это обычные понты ? Как и все отписавшиеся тут с откликами "клева", "спасибо почитаю" - обычные понторезы. Им выложи мурзилку в pdf и создай миф что это круто - они же будучи леммингами тоже самое напишут.

anonymous (27.02.2010 14:41:01)
[#] Ответ на: комментарий от anonymous 27.02.2010 14:41:01  

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

anonymous (27.02.2010 14:47:54)
[#] Ответ на: комментарий от KRoN73 27.02.2010 12:38:36  

А нормальный человек, не красноглазый, просто взял бы готовую реализацию ECMAscript.

anonymous (27.02.2010 14:48:54)
[#] Ответ на: комментарий от Kuka 25.02.2010 22:04:41  

> Кука, пожалуй, отложит традиционную рецензию до второй-третьей страницы комментов.

Обломщик! Уже пять страниц. Пиши рецензию!

anonymous (27.02.2010 14:50:42)
[#] Ответ на: комментарий от srj 27.02.2010 10:42:38  

>http://fprog.ru/donate/

Настоятельно рекомендую всем сходить по ссылке

>Мы хотим, по возможности, продолжать распространять журнал бесплатно. Но создавать его бесплатно у нас совершенно не получается.

Что в переводе на русский означает:

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

Одно непонятно - какое отношение подобные новости имеют к linux.

anonymous (27.02.2010 15:10:52)
[#] Ответ на: комментарий от anonymous 27.02.2010 15:10:52  
ott

да какая там прибыль? деньги идут на оформление (покупка рисунков, шрифтов и т.д.) и на конкурс...

ott ***** (27.02.2010 15:18:47)
[#] Ответ на: комментарий от archimag 26.02.2010 21:47:14  

Проще написать свою, чем разбираться как встроить в железку чужую.

anonymous (27.02.2010 15:40:31)
[#] Ответ на: комментарий от anonymous 27.02.2010 13:13:54  

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

В данном случае just for fun. Хотелось понять можно ли сделать переносимо без потери эффективности. Да и спарковский ассемблер мне не очень нравится :-)

anonymous (27.02.2010 15:45:40)
[#] Ответ на: комментарий от anonymous 27.02.2010 14:48:54  
KRoN73

>А нормальный человек, не красноглазый, просто взял бы готовую реализацию ECMAscript

Я же написал - управление из командной строки Lineage II.

KRoN73 ***** (27.02.2010 15:58:27)
[#] Ответ на: комментарий от ott 27.02.2010 15:18:47  

>да какая там прибыль? деньги идут на оформление (покупка рисунков, шрифтов и т.д.) и на конкурс..

Посетите для примера сайт проекта GNU http://www.gnu.org/help/help.ru.html

>Чем помочь

>Этот список упорядочен так, чтобы более срочные дела были расположены ближе к началу.

И посмотрите на каком там месте идут финансовые пожертвования.

anonymous (27.02.2010 16:01:51)
svr69

Re: Новый номер журнала «Практика функционального программирования»

Японская версия итальянской оперы? Это что? Перевод либретто, основанного на романе американского писателя, на японский? В таком случае, можно ли утвердать, что все персонажи "Анны Карениной" говорят на китайском, коль скоро "Анна Каренина" переводилась на китайский?

svr69 ** (27.02.2010 16:41:27)
[#] Ответ на: комментарий от anonymous 27.02.2010 16:01:51  
ott

дык журнал - не FSF, занимающийся глобальными вещами, а конкретное издание. мы не пытаемся организовывать user groups, etc.

ott ***** (27.02.2010 16:50:54)
[#] Ответ на: комментарий от ott 27.02.2010 16:50:54  

Тогда что делает новость о выходе вашего журнала на главной странице сайта

LINUX.ORG.RU - Русская информация об ОС Linux

Чем ваш журнал полезней для сообщества чем например http://www.playboy.com.ru

anonymous (27.02.2010 17:11:45)
[#] Ответ на: комментарий от anonymous 27.02.2010 15:10:52  

Отчего лиспофобы такие нищеброды?

anonymous (27.02.2010 17:12:42)
[#] Ответ на: комментарий от anonymous 27.02.2010 17:11:45  

> Тогда что делает новость о выходе вашего журнала на главной странице сайта

висит.

anonymous (27.02.2010 17:13:41)
[#] Ответ на: комментарий от anonymous 27.02.2010 17:12:42  

> Отчего лиспофобы такие нищеброды?

все кто пишет программы под линуксом нищеброды

fix

anonymous (27.02.2010 17:16:45)
[#] Ответ на: комментарий от anonymous 27.02.2010 17:11:45  
ott

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

ott ***** (27.02.2010 17:33:21)
[#] Ответ на: комментарий от anonymous 27.02.2010 17:11:45  

> Чем ваш журнал полезней для сообщества чем например http://www.playboy.com.ru

Что анонимус делает в обсуждении новости на главной странице сайта? Чем анонимус полезнее для сообщества чем например http://en.wikipedia.org/wiki/Adolf_Hitler

anonymous (27.02.2010 17:48:01)
[#] Ответ на: комментарий от ott 27.02.2010 17:33:21  

яву - это языки высокого уровня или java ? статьи от IBM DeveloperWorks публикуемые тут рассказывают о том что касается open source а на сайте www.ibm.com я не видел на главной странице ссылку на donate :)

anonymous (27.02.2010 17:48:55)
[#] Ответ на: комментарий от anonymous 27.02.2010 17:48:55  
ott

и чем вас так огорчает кнопка donate? неужели мы с ножом у горла требуем у вас денег и выкатываем счета за чтение журнала?

ott ***** (27.02.2010 18:04:36)
[#]  
www_linux_org_ru

> Для случая, когда g является функцией четырех аргументов:
> (((( . f) . ) . ) . ) g x y z v = g x y z (f v)

> В заключение хотелось бы ещё раз подчеркнуть, что бесточечный стиль


судя по количеству точек, бесточечным стилем надо было бы назвать стиль правой части :-)

www_linux_org_ru **** (27.02.2010 18:18:12)
[#] Ответ на: комментарий от ott 27.02.2010 18:04:36  

>и чем вас так огорчает кнопка donate?

Тем что не у всех есть электронная карта с привязанным paypal или webmoney, добавьте сервис с отправкой sms - мобильник доступен каждому.

anonymous (27.02.2010 18:20:20)
[#] Ответ на: комментарий от impfp 25.02.2010 23:13:31  
korvin_

что за диалект?

korvin_ ** (27.02.2010 18:26:07)
[#] Ответ на: комментарий от anonymous 27.02.2010 18:20:20  
ott

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

ott ***** (27.02.2010 18:27:17)
[#] Ответ на: комментарий от ott 27.02.2010 18:27:17  

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

anonymous (27.02.2010 18:37:43)

Re: Новый номер журнала «Практика функционального программирования»

> Все. Японская версия.

Ссылку на коммерческие (реальные, практические) проекты на Хаскель я привел. И их даже больше, чем разных арий на японском. Вывод: функционалка не только для теоретиков.

anonymous (27.02.2010 18:49:06)

О Сервере - Правила форума
http://www.linux.org.ru/

Rambler's Top100 Рейтинг@Mail.ru