LIPL: A small language implemented in Haskell. Very well documented.
OOHaskell: Haskell's overlooked object system Command option combination to achieve best performance In the shootout we typically use only: -O2 -optc-O2 -optc-march=pentium4 -optc-ffast-math -funbox-strict-fields, so you might double check using -O2 -optc-O2. Also see here.
MissingH - a large collection of assorted utility libraries for Haskell. Its primary audience is Haskell programmers that want to get practical things done fast.
ICFP 08 Entries (with their three lowest scores on spiral.wrld): The One Liners (many files, but crashed once, timed out once, reached home 3 times, 18880 + 21100 + 26430), RHZ (reduced to 227 lines by me, with a 3d visualiser in another file, 18530 + 18980 + 21360, reached home every time), Lazy Monkeys, Egér a Marson, solo r6 (200 lines, 26460 + 30100 + 36660, timed out once, crashed 3 times, reached home once), LazyBear (code, 500+ lines, 16460 + 16290 + 20020, killed by Martian once, reached home 4 times), Greg Heartsfield (timed out every time, 30100 * 3). ICFP 09 Resources http://www.reddit.com/r/programming/comments/8wmhs/icfp_contest_2009_diary/ http://www.reddit.com/r/icfpcontest/
Darcs evaluation by the GHC team. More thoughts. Patch theory. Slides, Slides. A blog post. Camp, known as Darcs 3. A recent discussion.
A place to host darcs repositories. A talk. Another talk. A Haskore tutorial.
Hacking Yi: Adding Vim-like Tabs.
Documents of the efforts, code, and apocrypha that have grown up around the efforts by various developers at Renci.
Compiler construction courses using Haskell
A summary of audio libs.
Lambda VM - Haskell to Java gat - git in Haskell OmegaGB - A Nintendo Game Boy emulator Twidge - a twitter client HBuild - a dependency framework for Cabal (background). A blog post on cabal. GHC optimizations Haskell Platform: Batteries Included MetaHDBC - uses Template Haskell's ability to evaluate arbitrary IO, to partially process SQL query at compile time and check the type. Quasiquotation (the name comes from Lisp/Scheme, aka backquote) - extending TH's ability to quote Haskell code, to allow for quoting arbitrary object languages, instead of writing the abstract syntax. Will be supported in GHC 6.10. Also see a Chinese discussion thread. This idea was first introduced in Lisp. Edison - a library of purely functional data structures. There's also a bunch of other interesting projects by Robert Dockins, such as Shellac, a framework for creating REPL shells in Haskell. Software Tools in Haskell, somewhat similar to PLEAC. Little games including Tetris and Mario, unfortunately commented in Japanese. A tutorial on parallel and concurrent programming, by Simon Peyton Jones Compiler Development Made Easy (PDF, code) - introducing the new GHC plugin system. The article appeared in the Google Summer of Code 2008 special issue of Monad.Reader. The feature probably will enter GHC 6.12. UHC - Utrecht Haskell Compiler. HLint - common mistakes detector Another example: ghci-haskeline, an implementation of ghci using the Haskeline line-input library. Clean quick guide for Haskellers. An executable operational semantics for python, implemented in Haskell (PDF) Haskell abstraction vs ML abstraction. The blog posts describe a serious real-world problem: programming against interfaces. The common practice that abstracts out types and operations into a module isn't a good solution, as you need to change the source code to import different modules you'd like to experiment with. The author concludes that multi-parameter type classes, or the new cool type families only render solutions inferior to ML's functors, which I sadly agree. The blog comments are worth reading too. In particular, Stefan Wehr brings up a paper ML Modules and Haskell Type Classes: A Constructive Comparison that gives a systematic way to simulate ML-style modules with associated types. Chung-chieh Shan also points out that Haskell module is purely a namespace mechanism and not for abstraction. See reddit. BASIC, a simple demonstration showing how to implement DSEL. New GUI libraries I should be learning: Grapefruit (ANN), Barrie. Two books on implementation of a Miranda-like language published in 1987 and 1992. A course project that translate GHC Core to Java IR. Vintage Basic Interpreter The $ operator explained Reduceron - hardware for reducing Haskell Advanced courses - KU (DSL), Chalmers, FLOLAC, MATH 198 on Category Theory, Generic Programming, DSL, Understanding arrows [1, 2, 3] compose-trans, a helper for writing composable monad transformers. MiniSTG, an interpreter for STG. A new book, Computational Semantics with Functional Programming (pdf). The Haskell School of Music |