Tools & ref
The intention behind this page is to flesh out some semi-standard for the directory structure, and the tool-setup for medium to large-sized Haskell projects. It is intended to make it easier for newcomers to start up projects, and for everybody to navigate others projects. Newcomers should also read How to write a Haskell program for more detailed instructions on setting up a new project. Especially I hope some focus can be made on how to make the different tools play well together, and giving the project structure that allows scaling. Hopefully someone more qualified than I (the initiator of this page) will be summoned and write their advices, change the faults, add missing bits and discuss differences in opinions. And perhaps a sample project (in the spirit of HNop, but with broader ambitions) should be made, so that can be used as a template. Structure of a Haskell project
The Haskell Road to Logic, Maths and Programming Sample from the book (table of contents plus first chapter): compressed postscript Addendum to Chapter 9 of the Book: Direct Computation of Polynomial Representations for Sequences:
The Haskell School of Expression: Learning Functional Programming through Multimedia by Paul Hudak, Yale University Cambridge University Press, New York, 2000 416 pp./15 line diagrams/75 exercises Paperback $29.95, ISBN: 0521644089 Hardback $74.95, ISBN: 0521643384 Abstract: Home Page
Patch-Tag is a place to host darcs repositories online, for private project coordination, for sharing with the open source community, or even just for worry-free versioned backup of personal data. Every darcs repository is also a darcsit wiki, if you want it to be. Gitit, an open source wiki tool, uses a version control back end (currently darcs or git) to store plain text pages, rather than a database. This means you can work on your wiki offline and push changes back when they are ready, if you like that workflow. Another plus: it's a lot easier to migrate a version control system-based wiki than a db-based wiki. Patch-Tag.com (like github for darcs)
Highest Voted 'haskell'
Welcome to a new technical series on Channel 9 folded into a different kind of 9 format: C9 Lectures. These are what you think they are, lectures. They are not conversational in nature (like most of what you're used to on 9), but rather these pieces are entirely focused on education, coming to you in the form of a series of high quality technical lectures (1 or more per topic) on a single topic. We kick off C9 Lectures with a journey into the world of Functional Programming with functional language purist and high priest of the lambda calculus, Dr. C9 Lectures: Dr. Erik Meijer - Functional Programming Fundamentals, Chapter 1 of 13 | Going Deep
Hey yo! This is Learn You a Haskell, the funkiest way to learn Haskell, which is the best functional programming language around. You may have heard of it. This guide is meant for people who have programmed already, but have yet to try functional programming. The whole thing is completely free to read online, but it's also available in print and I encourage you to buy as many copies as you can afford! To contact me, shoot me an email to: bonus at learnyouahaskell dot com!
Hoogle is a Haskell API search engine, which allows you to search many standard Haskell libraries by either function name, or by approximate type signature. Example searches: map (a -> b) -> [a] -> [b] Ord a => [a] -> [a] Data.Map.insert Enter your own search at the top of the page. The Hoogle manual contains more details, including further details on search queries, how to install Hoogle as a command line application and how to integrate Hoogle with Firefox/Emacs/Vim etc. I am very interested in any feedback you may have.
Haskell Platform from Source on Unix-Like
On some platforms GHC supports building Haskell code into shared libraries. Shared libraries are also sometimes known as dynamic libraries, in particular on Windows they are referred to as dynamic link libraries (DLLs). Shared libraries allow a single instance of some pre-compiled code to be shared between several programs. 4.12. Using shared libraries
The Haskell 98 Language Report - Contains Prelude Simon Peyton Jones [editor], Microsoft Research, Cambridge Lennart Augustsson, Sandburst Corporation Dave Barton, Intermetrics Brian Boutel, Victoria University of Wellington Warren Burton, Simon Fraser University Joseph Fasel, Los Alamos National Laboratory Kevin Hammond, University of St. Andrews Ralf Hinze, University of Bonn Paul Hudak, Yale University John Hughes, Chalmers University of Technology Thomas Johnsson, Chalmers University of Technology Mark Jones, Oregon Graduate Institute John Launchbury, Oregon Graduate Institute Erik Meijer, Microsoft Corporation John Peterson, Yale University Alastair Reid, University of Utah Colin Runciman, York University Philip Wadler, Avaya Labs Copyright (c) Simon Peyton Jones. The authors intend this Report to belong to the entire Haskell community, and so we grant permission to copy and distribute it for any purpose, provided that it is reproduced in its entirety, including this Notice.
Hayoo! will search all packages from Hackage, including all function and type definitions. Here are some example queries: map searches for everything that contains a word starting with "map" (case insensitive) in the function name, module name or description. Hayoo! - hackage search
HLint (formerly Dr. Haskell) reads Haskell programs and suggests changes that hopefully make them easier to read. HLint also makes it easy to disable unwanted suggestions, and to add your own custom suggestions. Running the tool over the darcs source code, we can generate an interactive report with --report, or view the results in the console: Neil Mitchell - HLint
Installing leksah, gtk, gtk2hs, and glade on Ubuntu 10.04 LTS -the Lucid Lynx
There are many Emacs packages and modules for Haskell. The most prominent ones are haskell-mode, ghc-mod and Scion. 1 Newbie guide mode for Emacs