Реальный мир [закрытое] программирование Haskell

Если Вы установите append параметр к false, то основной файл журнала будет "запущен новый", когда приложение перезапустит. Вы подразумеваете, что хотите, чтобы какие-либо "прокрученные" файлы журнала были удалены также?

48
задан raven 10 July 2009 в 21:14
поделиться

6 ответов

Когда вы говорите «примеры из реального мира», вы, вероятно, думаете о проблемах, которые по своей сути являются последовательными или с отслеживанием состояния, или выполняют много операций ввода-вывода, верно?

Итак, как насчет игр?

Или, как насчет X Window Manager , расширяемого текстового редактора клонов Emacs или an IDE ?

Затем есть книга, в названии которой даже есть ваш вопрос: Real World Haskell и , который также доступен для бесплатно !

Еще одна вещь, на которую вы, возможно, захотите посмотреть, - это Функциональное реактивное программирование . (Он используется, например, во Frag.) В FRP интересно то, что он позволяет вам взглянуть на проблему, скажем, программирования графического интерфейса пользователя под совершенно другим углом. Если вы прочитаете главу о графическом интерфейсе пользователя в книге RWH, вы увидите, что в ней говорится о том, как можно написать приложение с графическим интерфейсом, как в C, только лучше. FRP OTOH позволяет записать его совершенно другим способом, который даже не был бы в C.

много раз (я не говорю, что это случай в вашем вопросе, но это повторяющийся шаблон), когда кто-то говорит «но можно ли использовать Haskell в реальном мире», они на самом деле говорят: «Я знаю, как это сделать в C, а в Haskell я не могу сделать это точно так же, поэтому в Haskell это должно быть невозможно, поэтому Haskell не готов для реального мира ". Но они упускают то, что может быть совершенно другой и гораздо лучший способ решения проблемы. (Это все равно, что сказать: «У Erlang нет потоков, поэтому его нельзя использовать для реализации параллельных систем».

89
ответ дан 7 November 2019 в 12:15
поделиться

xmonad is event driven (literally). It has a listener loop that wakes up on events, modifying an internal state modelling the X server, which is then rendered to the screen.

http://xmonad.org

7
ответ дан 7 November 2019 в 12:15
поделиться

Однажды я нашел этого IRC-бота, написанного на haskell:

http://www.haskell.org/haskellwiki/Roll_your_own_IRC_bot

6
ответ дан 7 November 2019 в 12:15
поделиться

вам следует ознакомиться с Real World Haskell . Книга находится в свободном доступе и показывает, как Haskell можно применить к проблемам реального мира. Я бы не назвал это учебным пособием, поскольку он гораздо более всеобъемлющий.

4
ответ дан 7 November 2019 в 12:15
поделиться
2
ответ дан 7 November 2019 в 12:15
поделиться

Вот несколько ссылок, которые вы просили.

Это объясняет многие вещи, которые «не имеют смысла» для императивного программиста о Haskell

Haskell Tutorial for C Programmers

Это очень хорошее руководство, которому легко следовать

Learn You a Haskell for Great Good

Raytracer, написанный на Haskell

Haskell Raytracer

Вы можете скачать Glasgow Haskell Compiler отсюда. GHC

6
ответ дан 7 November 2019 в 12:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: