[ANN] Журнал "Практика функционального программирования"
От: dmz Россия  
Дата: 21.07.09 05:35
Оценка: 355 (30) +1
http://fprog.ru/2009/issue1/

Первый номер журнала посвящён погружению в предмет функционального программирования. Вводные статьи Сергея Зефирова «Лень бояться» и Романа Душкина «Функции и функциональный подход» затрагивают философию парадигм программирования. Более практически направленная часть журнала представлена статьёй Евгения Кирпичёва «Изменяемое состояние: опасности и борьба с ними», классифицирующей типы проблем, возникающих при небрежном использовании сущностей с изменяемым состоянием, и следующей за ней статьёй Дмитрия Астапова «Давно не брал я в руки шашек», на протяжении нескольких страниц раскрывающей подход проектирования «сверху вниз» на подробном примере написания игры в шашки на языке Haskell. Статья Дэна Пипони «Моноиды в Haskell и их использование» в переводе Кирилла Заборского простым языком обьясняет практическое применение моноидов для создания элегантных полиморфных алгоритмов. Номер завершается внушительным «Обзором литературы о функциональном программировании» Алексея Отта, содержащим множество ссылок на русскоязычную и англоязычную литературу по разным языкам и аспектам декларативного программирования.
Re: [ANN] Журнал "Практика функционального программирования"
От: Аноним  
Дата: 22.07.09 14:57
Оценка: :))
Хороший журнал.
Только процентов 75 непонятно
Надеюсь что пока.
Re: [ANN] Журнал "Практика функционального программирования"
От: Lazy Cjow Rhrr Россия lj://_lcr_
Дата: 23.07.09 05:01
Оценка: +1
dmz, thesz и другие,

Жму ваши мохнатые лапы! Молодцы!
quicksort =: (($:@(<#[),(=#[),$:@(>#[)) ({~ ?@#)) ^: (1<#)
Re[2]: [ANN] Журнал "Практика функционального программирован
От: Курилка Россия http://kirya.narod.ru/
Дата: 23.07.09 08:09
Оценка: +2
Здравствуйте, Lazy Cjow Rhrr, Вы писали:

LCR>dmz, thesz и другие,


LCR>Жму ваши мохнатые лапы! Молодцы!


Дак это, может тоже что-нибудь напишешь про практику ФП?
Re[2]: [ANN] Журнал "Практика функционального программирован
От: thesz Россия http://thesz.livejournal.com
Дата: 23.07.09 08:42
Оценка: 87 (4)
Здравствуйте, Lazy Cjow Rhrr, Вы писали:

LCR>dmz, thesz и другие,


LCR>Жму ваши мохнатые лапы! Молодцы!


Спасибо.
Yours truly, Serguey Zefirov (thesz NA mail TOCHKA ru)
Re[2]: [ANN] Журнал "Практика функционального программирован
От: dmz Россия  
Дата: 23.07.09 11:47
Оценка:
Здравствуйте, Lazy Cjow Rhrr, Вы писали:

LCR>dmz, thesz и другие,


LCR>Жму ваши мохнатые лапы! Молодцы!


Не, я только разместил объяву. Если все будет нормально, то моя статья будет в следующем номере только.
Re[3]: [ANN] Журнал "Практика функционального программирован
От: frontsquat  
Дата: 23.07.09 18:31
Оценка: +2
Здравствуйте, dmz, Вы писали:

dmz>Здравствуйте, Lazy Cjow Rhrr, Вы писали:


LCR>>dmz, thesz и другие,


LCR>>Жму ваши мохнатые лапы! Молодцы!


dmz>Не, я только разместил объяву. Если все будет нормально, то моя статья будет в следующем номере только.


А мог бы ты про свой Beep написать? Про компилятор, про виртуальную машину. Было бы очень интересно. Кстати, его исходники можно где-нибудь скачать?
Re[4]: [ANN] Журнал "Практика функционального программирован
От: dmz Россия  
Дата: 23.07.09 23:47
Оценка:
dmz>>Не, я только разместил объяву. Если все будет нормально, то моя статья будет в следующем номере только.

F>А мог бы ты про свой Beep написать? Про компилятор, про виртуальную машину. Было бы очень интересно. Кстати, его исходники можно где-нибудь скачать?


Вот как раз решили, что я про него и напишу. Сначала предполагалась другая статья, но решили что про Beep будет интереснее, опять же, народ хочет практического применения ФЯ.

Что касается Бипа, то вопрос о том, как он будет распространятся — в опенсорос виде, полностью или частично, что будет закрыто, что открыто — пока подвешен, до начала выпуска железок, на которых он будет работать. С ними происходит некоторая заминка, но свет в конце тоннеля уже виден, так что к осени я думаю, так или иначе Бип доступен будет. В любом случае, закрывать компилятор коммерческого смысла нет, а вот с рантаймом пока менее очевидная ситуация.
Re[3]: [ANN] Журнал "Практика функционального программирован
От: Lazy Cjow Rhrr Россия lj://_lcr_
Дата: 29.07.09 05:21
Оценка:
Курилка,

К>Дак это, может тоже что-нибудь напишешь про практику ФП?


Эхх, моя практика ФП сейчас ограничивается преимущественно
    private readonly Func<Func<string>, Action<Stream>> mustBeF =
        fs => stream => IsStreamOk(fs(), stream);

    private readonly Func<Func<string>, Func<Stream>> simulateF =
        fs => () => new MemoryStream(new UTF8Encoding(false).GetBytes(fs()));

    ...
    var result = RunMethod(
        () => fsys.Scan(_path),
        mustBeF(() => mustBeTemplate(i)),
        simulateF(() => simulatedTemplate(i)));

Но, вообще, спасибо за совет.
quicksort =: (($:@(<#[),(=#[),$:@(>#[)) ({~ ?@#)) ^: (1<#)
Re: [ANN] Журнал "Практика функционального программирования"
От: Andir Россия
Дата: 29.07.09 12:06
Оценка:
Здравствуйте, dmz, Вы писали:

dmz>http://fprog.ru/2009/issue1/


Вот там есть для скачивания версия для экранов с небольшим разрешением, как написано для EBook. Я попробовал на PRS-505, но выглядит это всё равно мелковато, а в увеличенном виде проявляются стандартные болезни pdf на ебуке, аля висячие переносы строк.
А нет возможности сделать ещё крупнее (под 6 дюймов экран), или вообще под какой-нибудь стандартный формат ебуков перегнать (ePub, lrf, fb2 и т.п.)?

С Уважением, Andir!
using( RSDN@Home 1.2.0 alpha 4 rev. 1233 ) { /* Работаем */ }
Re[2]: [ANN] Журнал "Практика функционального программирован
От: swame  
Дата: 29.07.09 14:38
Оценка:
Здравствуйте, Andir, Вы писали:

A>Здравствуйте, dmz, Вы писали:


dmz>>http://fprog.ru/2009/issue1/


A>Вот там есть для скачивания версия для экранов с небольшим разрешением, как написано для EBook. Я попробовал на PRS-505, но выглядит это всё равно мелковато, а в увеличенном виде проявляются стандартные болезни pdf на ебуке, аля висячие переносы строк.

A>А нет возможности сделать ещё крупнее (под 6 дюймов экран), или вообще под какой-нибудь стандартный формат ебуков перегнать (ePub, lrf, fb2 и т.п.)?

A>С Уважением, Andir!


Смотрел PDF на PocketBook — в ландшафтной ориентации — нормально по размеру.
Re[3]: [ANN] Журнал "Практика функционального программирован
От: Andir Россия
Дата: 29.07.09 19:35
Оценка:
Здравствуйте, swame, Вы писали:

S>Смотрел PDF на PocketBook — в ландшафтной ориентации — нормально по размеру.


В принципе, да-а, в ландшафтной уже можно кое-как читать, но хотелось бы в обычном режиме и побольше шрифт.

С Уважением, Andir!
using( RSDN@Home 1.2.0 alpha 4 rev. 1233 ) { /* Работаем */ }
Re[4]: [ANN] Журнал "Практика функционального программирован
От: dmz Россия  
Дата: 30.07.09 04:36
Оценка:
S>>Смотрел PDF на PocketBook — в ландшафтной ориентации — нормально по размеру.

A>В принципе, да-а, в ландшафтной уже можно кое-как читать, но хотелось бы в обычном режиме и побольше шрифт.


Лучше написать в ru_declarative, где было обсуждение технических деталей или непосредственно Льву — на fprog.ru есть адреса.
Но насколько это сейчас актуально? Сейчас идет подготовка уже второго номера.
Re: [ANN] Журнал "Практика функционального программирования"
От: Andrei N.Sobchuck Украина www.smalltalk.ru
Дата: 07.08.09 11:12
Оценка: 1 (1)
Здравствуйте, dmz, Вы писали:

Хе-хе, а критику принимаете?

dmz>Первый номер журнала посвящён погружению в предмет функционального программирования. Вводные статьи Сергея Зефирова «Лень бояться»


Вообще не понял статья о чем и зачем

dmz>и Романа Душкина «Функции и функциональный подход» затрагивают философию парадигм программирования.


В отличие от предыдущей статье тут с претензией на информативность и практичность.
Но. Цитаты:

Но за всё время работы автора в этой компании ни один из кандидатов не предложил решения
задачи в функциональном стиле.
Вот как выглядит типовая функция для описанной цели на языке C++:

std::string int2hex (int i) {
  std::string result = ””;
  while (i) {
    result = hexDigit (i % 16) + result;
    i /= 16;
  }
  return result;
}

/.../
Как же решить эту задачу при помощи функционального подхода? /.../
На языке Haskell эта задача может быть решена
следующим образом:
int2hex :: Integer -> String
int2hex 0 = ””
int2hex i = int2hex (i ‘div‘ 16) ++ hexDigit (i ‘mod‘ 16)


Я, конечно, не большой ценитель ФП, но, имхо, приведённые решения на С++ и Haskell абсолютно одинаковы. Т.е., по мнению автора, "функциональным" решение становиться после замены цикла на рекурсию и использованию "patern matching"-а. У меня есть сомнения в справедливости (и ценности) такого упрощения.
Плюс в тексте упоминаются "несколько интересных особенностей языка Haskell" — для статьи "затрагивающей философию парадигм программирования" это излишне. Бегло упомянуто "частичное применение", но что от него можно получить — нету. То же самое с ФВП. Последнее особенно удивительно если учесть, что тут на rsdn функции высших порядков упоминались как основное средство для "композиции алгоритмов", а "композиция алгоритмов" == "profit". Бегло упомянута ленивость, хотя к статье она почти не в тему.

Итого, много внимания синтаксическим особенностям и мало философским.

dmz>Более практически направленная часть журнала представлена статьёй Евгения Кирпичёва «Изменяемое состояние: опасности и борьба с ними», классифицирующей типы проблем, возникающих при небрежном использовании сущностей с изменяемым состоянием,


Скорее "хорошо".

dmz> и следующей за ней статьёй Дмитрия Астапова «Давно не брал я в руки шашек», на протяжении нескольких страниц раскрывающей подход проектирования «сверху вниз» на подробном примере написания игры в шашки на языке Haskell.


В код не погружался, поэтому за его качество и за качество проектирования не скажу, но от самой статьи очень хорошее впечатление (и название хорошее ).

dmz> Статья Дэна Пипони «Моноиды в Haskell и их использование» в переводе Кирилла Заборского простым языком обьясняет практическое применение моноидов для создания элегантных полиморфных алгоритмов.


интересно.

dmz> Номер завершается внушительным «Обзором литературы о функциональном программировании» Алексея Отта, содержащим множество ссылок на русскоязычную и англоязычную литературу по разным языкам и аспектам декларативного программирования.
Я ненавижу Hibernate
Автор: Andrei N.Sobchuck
Дата: 08.01.08
!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.