книжка по функциональному программированию

23 views
Skip to first unread message

Daniil Elovkov

unread,
Aug 12, 2010, 10:52:22 AM8/12/10
to spb...@googlegroups.com

Привет народ
У знакомого возникла потребность в книге по функциональному
программированию. Я в свое время с ними не пересекался, поэтому ничего
посоветовать ему не могу.

Цель - не начать сразу писать реальные проги. Цель - в начале, осмыслить
суть подхода. А потом, похоже, для работы в области физики. Не знаю
деталей. Скажем интенсивные вычисления какие-нибудь есть или нет.
Так что real-world haskell наверно не очень подходит.

С языком неопредленность. Требование - чтоб не f# :) Не знаю почему,
может на линухе его нету...

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

Вобщем посоветуйте пжл.

По языку, я думаю, что... Хаскел :) Мне кажется, что для обучения он
очень хорош. Не знаю, scala работает на jvm, но может это и не нужно...


--
Daniil Elovkov

Alex Ott

unread,
Aug 12, 2010, 10:58:36 AM8/12/10
to spb...@googlegroups.com
Привет

У меня есть обзор литературы по ФП - http://alexott.net/ru/fp/books/

есть "Введение в функциональное программирование" - перевод курса лекций
харрисона


Daniil Elovkov at "Thu, 12 Aug 2010 18:52:22 +0400" wrote:
DE> Привет народ
DE> У знакомого возникла потребность в книге по функциональному программированию. Я в свое
DE> время с ними не пересекался, поэтому ничего посоветовать ему не могу.

DE> Цель - не начать сразу писать реальные проги. Цель - в начале, осмыслить суть подхода. А
DE> потом, похоже, для работы в области физики. Не знаю деталей. Скажем интенсивные вычисления
DE> какие-нибудь есть или нет.
DE> Так что real-world haskell наверно не очень подходит.

DE> С языком неопредленность. Требование - чтоб не f# :) Не знаю почему, может на линухе его
DE> нету...

DE> Касательно языка естественного, то если русский, то чтобы была "нормальная"
DE> терминология. Для ФП опасение, по-моему, особенно актуальное :) На английском
DE> нормально. Бумажность не обязательна.

DE> Вобщем посоветуйте пжл.

DE> По языку, я думаю, что... Хаскел :) Мне кажется, что для обучения он очень хорош. Не знаю,
DE> scala работает на jvm, но может это и не нужно...




--
With best wishes, Alex Ott, MBA
http://alexott.blogspot.com/ http://alexott.net
http://alexott-ru.blogspot.com/

pierre

unread,
Aug 12, 2010, 11:01:40 AM8/12/10
to spb...@googlegroups.com
2010/8/12 Daniil Elovkov <daniil....@gmail.com>:

>
> Привет народ
> У знакомого возникла потребность в книге по функциональному
> программированию. Я в свое время с ними не пересекался, поэтому ничего
> посоветовать ему не могу.
>
> Цель - не начать сразу писать реальные проги. Цель - в начале, осмыслить
> суть подхода. А потом, похоже, для работы в области физики. Не знаю деталей.
> Скажем интенсивные вычисления какие-нибудь есть или нет.
> Так что real-world haskell наверно не очень подходит.

Для работы в области физики советую APL-образные языки, например -- J.
Там сплошные интенсивные вычисления, правда, ФП представлено в не
совсем классическом виде. А на хаскеле довольно сложно что-то научное
считать.

> --
> Daniil Elovkov

--
С уважением,
Петр.

Daniil Elovkov

unread,
Aug 12, 2010, 11:12:04 AM8/12/10
to spb...@googlegroups.com
On 12.08.2010 19:01, pierre wrote:
> 2010/8/12 Daniil Elovkov<daniil....@gmail.com>:
>>
>> О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫
>> О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫ О©╫О©╫О©╫О©╫О©╫ О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫
>> О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫. О©╫ О©╫ О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫ О©╫ О©╫О©╫О©╫О©╫ О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫, О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫
>> О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫ О©╫О©╫ О©╫О©╫О©╫О©╫.
>>
>> О©╫О©╫О©╫О©╫ - О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫. О©╫О©╫О©╫О©╫ - О©╫ О©╫О©╫О©╫О©╫О©╫О©╫, О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫
>> О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫. О©╫ О©╫О©╫О©╫О©╫О©╫, О©╫О©╫О©╫О©╫О©╫О©╫, О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫ О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫. О©╫О©╫ О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫.
>> О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫-О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫ О©╫О©╫О©╫ О©╫О©╫О©╫.
>> О©╫О©╫О©╫ О©╫О©╫О©╫ real-world haskell О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫ О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫.
>
> О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫ О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫ APL-О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫, О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ -- J.
> О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫, О©╫О©╫О©╫О©╫О©╫О©╫, О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫ О©╫О©╫
> О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫. О©╫ О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫-О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫
> О©╫О©╫О©╫О©╫О©╫О©╫О©╫.

О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫. О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫.
О©╫О©╫ О©╫ О©╫О©╫О©╫-О©╫О©╫О©╫О©╫ О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫, О©╫О©╫О©╫ О©╫О©╫О©╫О©╫ О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫. О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫,
О©╫О©╫О©╫О©╫О©╫О©╫, О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫, О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫.

О©╫ О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫. О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫, О©╫О©╫О©╫ О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫ О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫
О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫-О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫. О©╫О©╫О©╫О©╫О©╫ О©╫О©╫ О©╫ О©╫О©╫О©╫О©╫О©╫О©╫ О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫, О©╫О©╫-О©╫О©╫О©╫О©╫О©╫,
О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫.


--
Daniil Elovkov

Dmitry Olshansky

unread,
Aug 12, 2010, 11:14:20 AM8/12/10
to spb...@googlegroups.com
Почему сложно?
Иногда, возможно, все же требуются массивы, с которыми не слишком удобно работать в Haskell'е. (Без привычки по крайней мере).
Других трудностей я не вижу.

12 августа 2010 г. 19:01 пользователь pierre <k.pie...@gmail.com> написал:

 
Для работы в области физики советую APL-образные языки, например -- J.
Там сплошные интенсивные вычисления, правда, ФП представлено в не
совсем классическом виде. А на хаскеле довольно сложно что-то научное
считать.
--
С уважением,
 Петр.

--
Отправить сообщение в SPb HUG: spb...@googlegroups.com
Отменить подписку: spbhug-un...@googlegroups.com
Страница группы: http://groups.google.com/group/spbhug?hl=ru

pierre

unread,
Aug 12, 2010, 11:17:59 AM8/12/10
to spb...@googlegroups.com
2010/8/12 Dmitry Olshansky <olsha...@gmail.com>:

> Почему сложно?
> Иногда, возможно, все же требуются массивы, с которыми не слишком удобно
> работать в Haskell'е. (Без привычки по крайней мере).
> Других трудностей я не вижу.

Массивы в научных вычислениях требуются не иногда, а всегда. А быстрая
работа с ними на хаскеле почас не сильно отличается от эквивалентного
кода на фортране (примеры -- на шутауте)

Dmitry Olshansky

unread,
Aug 12, 2010, 11:27:49 AM8/12/10
to spb...@googlegroups.com
Так в чем же сложность расчетов на H?

12 августа 2010 г. 19:17 пользователь pierre <k.pie...@gmail.com> написал:

--

pierre

unread,
Aug 12, 2010, 11:33:45 AM8/12/10
to spb...@googlegroups.com
2010/8/12 Dmitry Olshansky <olsha...@gmail.com>:

> Так в чем же сложность расчетов на H?

Сложностей нет, только писать приходится как на си. :-)

Stanislav Serebryakov

unread,
Aug 13, 2010, 5:13:48 AM8/13/10
to spb...@googlegroups.com
Привет!

Может ему сразу с RWH начать?
На Хаскеле с массивами всё лучше и лучше: есть vector [1] и repa [2].

  [1]: http://haskell.org/haskellwiki/Numeric_Haskell:_A_Vector_Tutorial
  [2]: http://hackage.haskell.org/package/repa-examples

2010/8/12 pierre <k.pie...@gmail.com>
2010/8/12 Dmitry Olshansky <olsha...@gmail.com>:
> Так в чем же сложность расчетов на H?

Сложностей нет, только писать приходится как на си. :-)

--
Отправить сообщение в SPb HUG: spb...@googlegroups.com
Отменить подписку: spbhug-un...@googlegroups.com
Страница группы: http://groups.google.com/group/spbhug?hl=ru



--
BR,
Stanislav `Cfr` Serebryakov,
http://claimid.com/cfr.

        ,-""-.
       /--.   \  .-.-'`-~
      | () )   |<_.-.
       \--'    / `~._ `~'
        `-..-'      `-  hjw

Cyril Schmidt

unread,
Aug 13, 2010, 7:15:07 AM8/13/10
to spb...@googlegroups.com
Можно еще порекомендовать hmatrix (http://code.haskell.org/hmatrix/) -- там очень толковая документация, к тому же там не используются очень заумные средства языка. Hmatrix очень подходит для ученого -- там есть все, что в Матлабе, и много чего ещё. 
 
Кирилл
 
--

 

2010/8/13 Stanislav Serebryakov <cfr...@gmail.com>:

Daniil Elovkov

unread,
Aug 17, 2010, 11:31:02 AM8/17/10
to spb...@googlegroups.com

О©╫О©╫О©╫О©╫О©╫О©╫
О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫, О©╫ О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫.

О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫, О©╫О©╫О©╫ rwh О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫, О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫, О©╫О©╫ rw. О©╫О©╫
О©╫О©╫О©╫О©╫О©╫О©╫ О©╫ О©╫О©╫ О©╫О©╫О©╫О©╫, О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫...

On 13.08.2010 13:13, Stanislav Serebryakov wrote:
> О©╫О©╫О©╫О©╫О©╫О©╫!
>
> О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫ О©╫ RWH О©╫О©╫О©╫О©╫О©╫О©╫?
> О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫сё О©╫О©╫О©╫О©╫О©╫ О©╫ О©╫О©╫О©╫О©╫О©╫: О©╫О©╫О©╫О©╫ vector [1] О©╫ repa [2].

> 2010/8/12 pierre <k.pie...@gmail.com <mailto:k.pie...@gmail.com>>
>
> 2010/8/12 Dmitry Olshansky <olsha...@gmail.com
> <mailto:olsha...@gmail.com>>:
> > О©╫О©╫О©╫ О©╫ О©╫О©╫О©╫ О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫ H?
>
> О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫, О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫ О©╫О©╫ О©╫О©╫. :-)
>

--
Daniil Elovkov

Reply all
Reply to author
Forward
0 new messages