Подтвердить что ты не робот

Какие темы haskell нужно решать в стиле Real-World-Haskell?

Прошло довольно много времени, когда вышел RWH (почти 3 года). Я очень хотел получить свою копию после последовательного написания книги в Интернете (что, я думаю, является одним из лучших способов написать книгу.) Какая награда читается посреди всех довольно академических работ студента-ученика обычно сталкивается!

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

my battered copy of rwh

Учитывая влияние RWH (и все еще есть), я искренне надеюсь, что когда-нибудь будет сиквел:) Некоторые из тем для сиквела, которые сразу придут мне в голову:

  • Iteratees
  • подробнее о параллельном программировании в haskell
  • достоинства и опасности ленивой оценки
    • возможно, охватывающий некоторые общие библиотеки, которые занимаются этим
    • в частности lazy io
  • новые функции ghc (например, новый диспетчер ввода-вывода, генератор кода LLVM)
  • запоминание
  • ..

Каковы темы, на которые сообществу haskell требуется описание стиля RWH?


это резюме предложений до сих пор:

Основные понятия

  • Iteratees/lazy IO
  • Стрелки
  • диспетчер событий ghc

Методы

  • generics (uniplate, syb)
  • метапрограммирование (шаблон Haskell)
  • структуры данных (использование функциональных структур данных, проектирование структур данных)
  • EDSL (проектирование EDSL)
  • запоминание
  • проектирование с монадами
  • лучшие практики для императивного программирования

Инструменты

  • ThreadScope
  • Расширенные инструменты FFI (c2hs, использование Haskell с C)
  • междусобойчик
  • пикши
  • hoogle
  • Настройка времени выполнения, особенно. Флаги GC
  • Джинн

Библиотеки

  • массивы и программирование массивов (вектор, репа, hmatrix)
  • число (случайные числа)
  • параллельное программирование (The Par monad)
  • Юникод и локали (текст, текст-icu)
  • парсинг (attoparsec, tagoup)
  • сеть (привязка, дад)
  • веб-материал (шаблон)
  • persistance (особенно привязки для хранения без sql)
  • графика (cairo, sdl, opengl)
  • xml (haxml)
  • криптографических
  • процессоры и системы.
4b9b3361

Ответ 1

Здесь мой прием, предвзятый к экосистеме.

Библиотеки

  • массивы и программирование массивов:
    • vector
    • repa
    • hmatrix
  • Числовые
    • случайные числа
  • параллельное программирование
    • Монада Par
  • Юникод и локали
    • text и text-icu
  • разборе
    • attoparsec
    • tagsoup
  • сеть
    • snap и/или yesod
  • веб-материал
    • шаблонный
  • настойчивость
    • за пределами hdbc
    • привязки к хранилищу no-sql
  • графика
    • cairo
    • sdl
    • opengl
  • XML
    • haxml
  • криптографических
  • процессоры и системы.

Методы

  • дженерики
    • uniplate
    • syb
  • метапрограммированием
    • Шаблон Haskell
    Структуры данных
    • проектирование структур данных
  • EDSLs
    • проектирование EDSL
  • запоминание
  • проектирование с монадами

Инструменты

  • ThreadScope
  • Расширенные инструменты FFI
    • c2hs
    • используя Haskell с C
  • Настройка времени выполнения, особенно. Флаги GC

Ответ 2

Мне бы хотелось увидеть:

  • Cabal и Hoogle и Haddock (лучшие практики для ежедневного рабочего процесса code - build - test - deploy)
  • Доступные структуры данных и их использование (реальный мир), характеристики производительности и пространства
  • Визуализация данных
  • Лучшие практики для императивного программирования
  • Yesod и Snap
  • Подробнее о подключении к базе данных (SQL и NoSQL)
  • Подробнее о сетевом программировании

"Больше на..." может быть лучше помещено в "Книгу Haskell Cookbook".

Ответ 3

Это менее "настоящие мирские", но я хотел бы видеть полезные представления (и возможные приложения Real World?) для

  • Джинн
  • Шаблон Haskell
  • Стрелки

Ответ 4

Я хотел спросить этот тот же самый вопрос! Я бы купил RWH vol2, если в нем есть элементы в списке. Я также хотел бы привести примеры реального мира (в определенном порядке)

Ответ 5

Мне бы хотелось увидеть "подход RWH" к функциональному реактивному программированию - версию RWH это, возможно, охватывающее Ямпу или что-то подобное. Но, может быть, эта тема не совсем "реальна" достаточно (пока)...

Ответ 6

Я недавно недавно был знаком с Haskell и только прочитал несколько глав этой книги и Программирование в Haskell от Graham Hutton

Тем не менее, я должен был бы согласиться с Alexander в том смысле, что мне бы хотелось увидеть "Поваренную книгу Haskell", а также новую более новую версию RWH (As Мне еще предстоит закончить, это не так важно лично для меня!).

Советы и примеры кода для создания дат, генерации случайных чисел и наиболее эффективных кодов для выполнения ключевых алгоритмов (сортировка и т.д.) были бы отличным дополнением к любому такая книга!