Author Topic: Learn you a haskell for great good  (Read 4443 times)

0 Members and 1 Guest are viewing this topic.







adarqui

  • Administrator
  • Hero Member
  • *****
  • Posts: 30211
  • who run it.
  • Respect: +7366
    • View Profile
    • Email
Re: Learn you a haskell for great good
« Reply #6 on: January 18, 2014, 08:04:44 pm »
0
parallel and concurrent programming in haskell - simon marlow

http://chimera.labs.oreilly.com/books/1230000000929/index.html

free :F

adarqui

  • Administrator
  • Hero Member
  • *****
  • Posts: 30211
  • who run it.
  • Respect: +7366
    • View Profile
    • Email
Re: Learn you a haskell for great good
« Reply #7 on: January 21, 2014, 04:04:48 am »
0
check out the parallel version of quicksort

http://book.realworldhaskell.org/read/concurrent-and-multicore-programming.html


normal:
Code: [Select]
sort :: (Ord a) => [a] -> [a]
sort (x:xs) = lesser ++ x:greater
    where lesser  = sort [y | y <- xs, y <  x]
          greater = sort [y | y <- xs, y >= x]
sort _ = []

parallel:
Code: [Select]
module Sorting where

import Control.Parallel (par, pseq)

parSort :: (Ord a) => [a] -> [a]
parSort (x:xs)    = force greater `par` (force lesser `pseq`
                                         (lesser ++ x:greater))
    where lesser  = parSort [y | y <- xs, y <  x]
          greater = parSort [y | y <- xs, y >= x]
parSort _         = []





adarqui

  • Administrator
  • Hero Member
  • *****
  • Posts: 30211
  • who run it.
  • Respect: +7366
    • View Profile
    • Email
Re: Learn you a haskell for great good
« Reply #11 on: May 12, 2014, 07:20:06 am »
0
haskell 2010 language spec:
http://www.haskell.org/definition/haskell2010.pdf


Curry/Howard Correspondence:
http://en.wikibooks.org/wiki/Haskell/Denotational_semantics
http://en.wikibooks.org/wiki/Haskell/The_Curry-Howard_isomorphism


Types and programming languages:
http://ropas.snu.ac.kr/~kwang/520/pierce_book.pdf


Programming in haskell:
http://bin-login.name/ftp/pub/docs/programming-in-haskell.9780521692694.33359.pdf


Parallel and concurrent programming in haskell:
http://chimera.labs.oreilly.com/books/1230000000929/index.html


Typeclassopedia (pdf):
http://www.cs.tufts.edu/comp/150FP/archive/brent-yorgey/tc.pdf


Introduction to functional programming:
http://www.nlda-tw.nl/janmartin/vakken/TFIT/Extra%20materiaal/Bird_Wadler.%20Introduction%20to%20Functional%20Programming.1ed.pdf


Type systems for programming languages:
http://www.cs.cmu.edu/~rwh/misc/tspl.pdf


Advanced topics in type systems:
http://camlunity.ru/swap/Functional%20Programming/Type%20Systems/Pierce/Advanced%20Topics%20in%20Types%20and%20Programming%20Languages.pdf


The haskell road to logic, math etc
http://fldit-www.cs.uni-dortmund.de/~peter/PS07/HR.pdf


LambdaPi:
http://www.andres-loeh.de/LambdaPi/LambdaPi.pdf



Nice notes:
http://dev.stephendiehl.com/hask/


lambda calc intro:
http://www.utdallas.edu/~gupta/courses/apl/lambda.pdf


lambda calc handout:
http://www.ics.uci.edu/~lopes/teaching/inf212W12/readings/lambda-calculus-handout.pdf


all about monads:
http://www.haskell.org/haskellwiki/All_About_Monads#The_Writer_monad


functional programming with overloading and high order polymorphism:
http://web.cecs.pdx.edu/~mpj/pubs/springschool95.pdf


lambda calculus and combinators:
http://pds14.egloos.com/pds/200901/16/93/Lambda-Calculus_and_Combinators.pdf
http://www.cambridge.org/gb/academic/subjects/computer-science/programming-languages-and-applied-logic/lambda-calculus-and-combinators-introduction-2nd-edition?format=HB


proofs and types:
http://www.paultaylor.eu/stable/prot.pdf

types and models:
http://www.pps.univ-paris-diderot.fr/~krivine/articles/Lambda.pdf

set theory:
https://logic.wikischolars.columbia.edu/file/view/Kunen,+K.+(1980).+Set+Theory.pdf/205671054/Kunen,+K.+(1980).+Set+Theory.pdf

λ

adarqui

  • Administrator
  • Hero Member
  • *****
  • Posts: 30211
  • who run it.
  • Respect: +7366
    • View Profile
    • Email
Re: Learn you a haskell for great good
« Reply #12 on: May 14, 2014, 10:02:36 pm »
0
posting again for emphasis... excellent notes on haskell by "stephen diehl":

http://dev.stephendiehl.com/hask/