?

Log in

No account? Create an account
ru_declarative [entries|archive|friends|userinfo]
ru_declarative

[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

Журнал «Практика функционального программирования» [Jul. 20th, 2009|09:57 pm]
ru_declarative

ru_declarative

[lionet]
Вашему вниманию представляется первый выпуск журнала, посвящённого практике функционального и декларативного программирования. Мы ставим своей задачей помочь вам сориентироваться в инструментарии функционального программирования, в используемых в функциональной парадигме подходах к декомпозиции задач, способах упрощения программирования и снижения количества дефектов в разрабатываемых системах.

http://fprog.ru/

Первый номер журнала посвящён погружению в предмет функционального программирования. Вводные статьи Сергея Зефирова «Лень бояться» и Романа Душкина «Функции и функциональный подход» затрагивают философию парадигм программирования. Более практически направленная часть журнала представлена статьёй Евгения Кирпичёва «Изменяемое состояние: опасности и борьба с ними», классифицирующей типы проблем, возникающих при небрежном использовании сущностей с изменяемым состоянием, и следующей за ней статьёй Дмитрия Астапова «Давно не брал я в руки шашек», на протяжении нескольких страниц раскрывающей подход проектирования «сверху вниз» на подробном примере написания игры в шашки на языке Haskell. Статья Дэна Пипони «Моноиды в Haskell и их использование» в переводе Кирилла Заборского простым языком обьясняет практическое применение моноидов для создания элегантных полиморфных алгоритмов. Номер завершается внушительным «Обзором литературы о функциональном программировании» Алексея Отта, содержащим множество ссылок на русскоязычную и англоязычную литературу по разным языкам и аспектам декларативного программирования.

Приятного чтения!
linkReply

Comments:
Page 3 of 4
<<[1] [2] [3] [4] >>
[User Picture]From: samurai_within
2009-07-21 04:06 pm (UTC)
А вот интересно, ну чисто гипотетически, в fb2 эту прелесть можно выгнать ?
(Reply) (Thread)
From: ext_188264
2009-07-21 04:30 pm (UTC)
Кстати, да!
Мне лично этот вариант был бы даже удобнее, чем HTML.
(Reply) (Parent) (Thread) (Expand)
From: e_mmortal
2009-07-21 04:23 pm (UTC)

Erik Meijer

Erik Meijer произносится как Эрик Майер. Правда не уверен, что и писать так нужно.
(Reply) (Thread)
[User Picture]From: lionet
2009-07-21 06:23 pm (UTC)

Re: Erik Meijer

Действительно, именно так и нужно (прецедент существует). Спасибо!
(Reply) (Parent) (Thread)
(Deleted comment)
[User Picture]From: lionet
2009-07-21 06:25 pm (UTC)

Re: Формат

Потому что "типа блог" есть, называется ru_declarative или ru_lambda. В него пишут? Нет.

А в журнал пишут. Ибо процесс. Ибо дисциплина. Ибо взаимное ревью. Ибо корректура (какая никакая). Ибо форматирование. Ибо дедлайны. Ибо компиляция. Ибо общая тематика номера. Ибо синергетика.
(Reply) (Parent) (Thread) (Expand)
(Deleted comment)
From: ext_72902
2009-07-22 08:46 pm (UTC)
Она, типа, intentionally left blank.
(Reply) (Parent) (Thread)
[User Picture]From: samurai_within
2009-07-21 07:33 pm (UTC)
эх.. нет счастья. a5 в lbook v3 выглядит дюже мелко :( Может можно что-то сделать?
(Reply) (Thread)
[User Picture]From: lionet
2009-07-21 07:35 pm (UTC)
можно, конечно.

1. будет HTML. пойдёт?
2. можно ковырнуть fb2
3. можно a5 заменить на что-то ещё более мелкое
4. твои варианты?
(Reply) (Parent) (Thread) (Expand)
From: (Anonymous)
2009-07-21 07:43 pm (UTC)
Можно ли какой нибудь ганжетодружелюбный формат текст html, rtf?
(Reply) (Thread)
[User Picture]From: lionet
2009-07-21 07:58 pm (UTC)
HTML будет на днях.
(Reply) (Parent) (Thread)
[User Picture]From: extremus
2009-07-21 08:15 pm (UTC)

Спасибо

Спасибо за журнал всем кто его делает! Шикарное начинание!
(Reply) (Thread)
[User Picture]From: bigfuckingun
2009-07-21 10:29 pm (UTC)
ну почему нельзя на сайте полистать...
(Reply) (Thread)
From: korviax
2009-07-25 05:02 pm (UTC)

я против за 'листать'

По моему было бы здорово по подписке получить PDF а потом в этом например блоге высказаться. То если сделать возможность листать на сайте - не оригинально получается -- я против за 'листать'
(Reply) (Parent) (Thread) (Expand)
[User Picture]From: helvegr
2009-07-22 02:34 am (UTC)
Поздравляю!
(Reply) (Thread)
From: spartanetz
2009-07-22 06:45 am (UTC)
Хорошо!
(Reply) (Thread)
[User Picture]From: maximkat
2009-07-22 07:11 am (UTC)
Первая статья, пункт 1.3
> "Мы упрощаем для себя рассуждения о программе, поскольку можем проводить простую текстовую подстановку без оглядок на состояние мира или переменных."
Разве это именно из-за ленивости, а не из-за чистоты?
(Reply) (Thread)
[User Picture]From: maximkat
2009-07-22 07:14 am (UTC)
То же к пункту 1.5
(Reply) (Parent) (Thread)
From: (Anonymous)
2009-07-22 07:22 am (UTC)
О чем этот журнал?
Пока я понял только одно. Взяли неудачный пример на C++, переписали его на Хаскелл.
А где, извините, функциональный подход?
Зачем сравнивать, языки. Лучше сосредоточьтесь на функциональной сути.
(Reply) (Thread)
[User Picture]From: lionet
2009-07-22 08:28 am (UTC)
Читайте дальше, я вас умоляю.
(Reply) (Parent) (Thread)
From: (Anonymous)
2009-07-22 01:17 pm (UTC)

LaTeX формат

А почему нельзя выложить LaTeX исходники? И не нужно тогда десятка форматов.
(Reply) (Thread)
[User Picture]From: lionet
2009-07-23 05:06 am (UTC)

Re: LaTeX формат

Потому что это не статья в журнал, а проект. Там куча правок: куча нестандартных пакетов, стандартные пакеты "подрихтованы", существует препроцессинг и постпроцессинг. Собирается только на одной машине. Как будет собираться хотя бы на двух — будем думать над open-sourcing.
(Reply) (Parent) (Thread) (Expand)
From: (Anonymous)
2009-07-22 04:36 pm (UTC)

latex draft

Да и вообще, можно перед выпуском драфт версию на всеобщий доступ выкладывать - всякие опечатки и неточности бытсро найдутся.
(Reply) (Thread)
From: ext_188264
2009-07-22 06:05 pm (UTC)

Re: latex draft

В subversion, чтобы сразу патчами исправления присылать :D
(Reply) (Parent) (Thread) (Expand)
Re: latex draft - (Anonymous) Expand
[User Picture]From: yurikhan
2009-07-23 12:02 pm (UTC)

5.7 варианты перевода

В заключении статьи про моноиды осталось два варианта перевода первого абзаца.

Моноиды предоставляют обобщённый подход к комбинированию и сбору значений. Они позволяют нам писать код, который не обязан знать о том, каким способом комбинируются данные, и позволяют делать это таким образом, что в результате облегчается повторное использование кода. При помощи именованных моноидов, мы можем писать сигнатуры функций так, чтобы наши замыслы были легко понятны читающим код: к примеру при помощи Any вместо Bool мы даём понять, каким образом будет использоваться наше булево значение. Мы можем комбинировать блоки, созданные при помощи моноидов и библиотек Haskell, чтобы с минимальными усилиями строить удобные и простые для прочтения алгоритмы.

Моноиды предоставляют общий подход к комбинированию и сбору значений. Они позволяют нам писать такой код, для которого неважно, каким образом мы комбинируем значения, что делает его более удобным для повторного применения. Используя именованные моноиды, мы можем указывать сингатуры типов так, чтобы читающим код были понятны наши намерения: например, используя Any вместо Bool, мы поясняем, как именно будет использовано булево значение. Мы можем комбинировать основанные на моноидах блоки, предоставляемые библиотеками Haskell, для построения полезных и легко читаемых алгоритмов с минимумом усилий.

(Reply) (Thread)
Page 3 of 4
<<[1] [2] [3] [4] >>