52700.fb2
Application, Volume 2, 2012.
• Simon Marlow, Simon Peyton Jones. Making a Fast Curry: Push/Enter vs. Eval/Apply for Higher-order
Languages. ICFP’04.
• Simon Peyton Jones. Implementing lazy functional languages on stock hardware: the Spineless Tagless G-
machine.
• Simon Marlow, Tim Harris, Roshan P. James, Simon Peyton Jones. Parallel Generational-Copying Garbage
Collection with a Block-Structured Heap. ISMM’08.
• Simon Peyton Jones, Andre Santos. A transformation-based optimizer for Haskell. Science of computer
programming, 1998.
322 | Приложения
• Simon Peyton Jones, John Launchbury. Unboxed values as first citizens in a non-strict functional programming
language. 1991.
• Simon Marlow, Simon Peyton Jones. Secrets of Glasgow Haskell Compiler inliner. 1999
Статья о тонкостях реализации прагмы INLINE.
• Simon Peyton Jones, Andrew Tolmach, Tony Hoare. Playing by the Rules, ICFP 2001
Статья о прагме RULES.
Встроенные проблемно-ориентированные языки (EDSL)
• Oleg Kiselyov. Implementing Explicit and Finding Implicit Sharing in EDSLs.
Чистое решение проблемы поиска дублирующих подвыражений.
• Andy Gill. Type-Safe Observable Sharing in Haskell.
Решение проблемы поиска дублирующих подвыражений с помощью расширения GHC, позволяющего
проводить сравнение термов по указателям.
• Conal Elliott, Sigbjorn Finne, Oege de Moor. Compiling Embedded Languages.
Отчёт о построении EDSL для анимации.
• Bruno C.d.S. Oliveira, Andres Loh. Abstract Syntax Graphs for Domain Specific Languages.
Применение графов для кодирования дублирующих подвыражений в EDSL.
• Jacques Carette, Oleg Kiselyov and Chung-chieh Shan. Finally Tagless, Partially Evaluated. Tagless Staged
Interpreters for Simpler Typed Languages.
Построение расширяемого синтаксиса с помощью классов типов.
• Wouter Sweistra. Data types a la carte.
Построение расширяемых типов. В этой статье и выше под словом “расширяемый” понимается возмож-
ность добавления к типу новых конструкторов без перекомпиляции старых.
И все-все-все
Если вдруг у вас возникли вопросы по Haskell, и рядом с вами не оказалось того, кто мог бы на них
ответить, и в книгах нет ответа, вы можете спросить у сообщества Haskell, в haskell-cafe, там вам быстро и с
радостью ответят:
http://www.haskell.org/mailman/listinfo/haskell-cafe
Сообщество Haskell славится радушием и терпимостью к начинающим. Там много информации о выпус-
ках новых библиотек, конференциях, обучающих программах и просто разговоры о том-о-сём.
Также стоит отметить журнал Monad.Reader:
http://themonadreader.wordpress.com/
Литература | 323
Обзор Hackage
Число пакетов, загруженных на Hackage, уже перевалило за 2000. В Hackage легко заблудиться. Очень
часто не разберёшься какой из пакетов выбрать. К тому же многие из них заброшены или просто не подходят
для использования в серьёзных приложениях. Но среди них есть и очень хорошие пакеты. Некоторые из них
включены в Haskell Platform. Ниже приведён тематический обзор наиболее популярных пакетов.
Стандартные библиотеки
Все приведённые в этом подразделе библиотеки включены в Haskell Platform.