Homework solutions for UPenn's CIS 194:
http://www.seas.upenn.edu/~cis194/
On a mac:
# Add Cabal path to PATH
touch ~/.bashrc
echo 'export PATH=$HOME/Library/Haskell/bin:$PATH' >> ~/.bashrc
# Install haskell-platform
brew install ghc cabal-install
# Clone repo
git clone https://github.com/sm-haskell-users-group/cis-194 cis194
cd cis194
On Linux:
# Add Cabal path to PATH
touch ~/.bashrc
echo 'export PATH=$PATH:$HOME/.cabal/bin' >> ~/.bashrc
# Clone repo
git clone https://github.com/sm-haskell-users-group/cis-194 cis194
cd cis194
Then...
cabal update
cabal install hspec
cabal configure --enable-test
cabal build
make week1
cabal configure --enable-tests && cabal build && cabal test
Branch master
will contain tests and stubbed homework assignments only; please create a topic branch for yourself to which you'll commit your homework solutions.
Example:
~/dev/sm-cis194 $ git checkout -b erin
Switched to a new branch 'erin'
~/dev/sm-cis194 $ touch .foo
~/dev/sm-cis194 $ git add .
~/dev/sm-cis194 $ git commit -m "adding foo"
~/dev/sm-cis194 $ git push origin erin
date | which homework due? | who is presenting? | what's the topic? |
---|---|---|---|
WED, Nov. 26 | Markets / monoids | Erin | Lazy Evaluation |
THU, Dec. 4 | Streams | ??? | Monads or Functor + Applicative |
THU, Dec. 11 | N/A | N/A | N/A |
THU, Dec. 18 | ??? | ??? | ??? |
THU, Dec. 25 | N/A | N/A | N/A |
FRI, Jan. 2 | ??? | ??? | ??? |
- Functor
- Applicative Functor (here and here)
- Monads ()here and here)
- Quickcheck
- Template Haskell
- Reader, Writer monads
- Concurrency Primitives
- Lens
- Foldable
- Traversable
- Phantom Types
- GADTs