Skip to content

Latest commit

 

History

History
74 lines (61 loc) · 3.42 KB

File metadata and controls

74 lines (61 loc) · 3.42 KB

* Haskell development environment setup

emcas

magit

cabal install hoogle

hoogle data – init hoogle hoogle getArgs hoogle –info getArgs :def search return . (“:! hoogle”) :def doc return . (“:! hoogle –info”) :def! – overwrite any existing definition –definde shortcut inside ghci to use hoogle, –put to ~/.ghci to not type each time you open ghci session :script home/arthur.ghci –to reload the file :search getArgs to use advanced search args like (a->b)-> m a -> m b – ~/.ghci let ghciEscapeShellArg arg = “’”++ concatMap(\c -> if c == ‘'’ then “’"’"’” else [c])arg ++”’” :def search return . (“:! hoogle”).ghciEscapeShellArg :def doc return . (“:! hoogle –info”).ghciEscapeShellArg

Course

This is a follow-on course to CMSC-16100, and is largely inspired by Stanford’s CS 240h, “Functional Systems in Haskell.” My purposes differ a bit from that of the Stanford course, as I want to consider a variety of advanced programming topics in Haskell like Template Haskell. CS240h Spring 2014 CS240h: Functional Systems in Haskell -2011

books

That said, it is one of the two books I encourage newcomers to Haskell to pick up. The other is Real World Haskell (RWH), which has complementary strengths and weaknesses to those of LYaH.

Learn You a Haskell for Great Good!

Real World Haskell

From there if you want to continue, you can dive deeper with

Pearls of Functional Algorithm Design

Parallel and Concurrent Programming in Haskell

Purely Functional Data Structures

Types and Programming Languages Benjamin C. Pierce

Basic Category Theory for Computer Scientists

Benjamin C. Piercer

Learning Haskell — A Racket programmer’s documentation of her foray into the land of Haskell (inspired by Learning Racket)

http://lexi-lambda.github.io/learning-haskell/ http://www.reddit.com/r/haskell/comments/2ypdiv// https://github.com/lexi-lambda

Fold

The problem of learning functional programming

http://bitemyapp.com/posts/2014-12-31-functional-education.html

Web development using Haskell

http://www.reddit.com/r/haskell/comments/2wfap0/web_development_using_haskell/

Turtle.Tutorial

  • cabal-bounds update –ignore=base *.cabal dist/dist-sandbox-*/setup-config
  • cabal-bounds update –lower –ignore=base *.cabal dist/dist-sandbox-*/setup-config