├── .gitignore ├── .travis.yml ├── 00-preface.md ├── 01-intro.md ├── 01ex-intro.md ├── 02-ho-datatypes.md ├── 02ex-ho-datatypes.md ├── 03-polymorphism.md ├── 03ex-polymorphism.md ├── 04-typeclasses.md ├── 04ex-typeclasses.md ├── LICENSE.md ├── Makefile ├── README.md ├── code ├── 03-activity-datatype.hs ├── 03-first-list.hs ├── 03-list-fun.hs ├── 03-start-screen.hs ├── 03ex-complete.hs ├── 03ex-template.hs ├── 03ex-without-winning.hs ├── 04-undo-bad.hs ├── 04-undo-start.hs ├── 04-undo-with-eq.hs ├── 04ex-sokoban.hs ├── activity-keypress.hs ├── activity-test.hs ├── blank.hs ├── circle.hs ├── data-type-maze.hs ├── ho-ex-1.hs ├── ho-ex-2.hs ├── ho-ex-3.hs ├── ho-maze.hs ├── more-data-types-maze.hs ├── multiple-trafficlights-spread.hs ├── multiple-trafficlights.hs ├── sokoban-ex1-sol.hs ├── sokoban-ex1.hs ├── trafficController-solution.hs ├── trafficController.hs ├── trafficlight.hs ├── tree-bloom.hs ├── tree-folding.hs └── tree.hs ├── images ├── function-machine.png ├── haskell-logo-light.png ├── haskell-logo-small.png ├── haskell-logo.png ├── pure.jpg ├── relax.jpg └── static.jpg ├── spellcheck.sh ├── static ├── Mazes.hs ├── inline-code.css ├── pandoc.css ├── solution.css └── solution.js ├── subst.pl ├── upload.sh ├── wordlist └── write-files.hs /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/.gitignore -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/.travis.yml -------------------------------------------------------------------------------- /00-preface.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/00-preface.md -------------------------------------------------------------------------------- /01-intro.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/01-intro.md -------------------------------------------------------------------------------- /01ex-intro.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/01ex-intro.md -------------------------------------------------------------------------------- /02-ho-datatypes.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/02-ho-datatypes.md -------------------------------------------------------------------------------- /02ex-ho-datatypes.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/02ex-ho-datatypes.md -------------------------------------------------------------------------------- /03-polymorphism.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/03-polymorphism.md -------------------------------------------------------------------------------- /03ex-polymorphism.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/03ex-polymorphism.md -------------------------------------------------------------------------------- /04-typeclasses.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/04-typeclasses.md -------------------------------------------------------------------------------- /04ex-typeclasses.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/04ex-typeclasses.md -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/LICENSE.md -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/README.md -------------------------------------------------------------------------------- /code/03-activity-datatype.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/03-activity-datatype.hs -------------------------------------------------------------------------------- /code/03-first-list.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/03-first-list.hs -------------------------------------------------------------------------------- /code/03-list-fun.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/03-list-fun.hs -------------------------------------------------------------------------------- /code/03-start-screen.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/03-start-screen.hs -------------------------------------------------------------------------------- /code/03ex-complete.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/03ex-complete.hs -------------------------------------------------------------------------------- /code/03ex-template.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/03ex-template.hs -------------------------------------------------------------------------------- /code/03ex-without-winning.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/03ex-without-winning.hs -------------------------------------------------------------------------------- /code/04-undo-bad.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/04-undo-bad.hs -------------------------------------------------------------------------------- /code/04-undo-start.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/04-undo-start.hs -------------------------------------------------------------------------------- /code/04-undo-with-eq.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/04-undo-with-eq.hs -------------------------------------------------------------------------------- /code/04ex-sokoban.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/04ex-sokoban.hs -------------------------------------------------------------------------------- /code/activity-keypress.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/activity-keypress.hs -------------------------------------------------------------------------------- /code/activity-test.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/activity-test.hs -------------------------------------------------------------------------------- /code/blank.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/blank.hs -------------------------------------------------------------------------------- /code/circle.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/circle.hs -------------------------------------------------------------------------------- /code/data-type-maze.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/data-type-maze.hs -------------------------------------------------------------------------------- /code/ho-ex-1.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/ho-ex-1.hs -------------------------------------------------------------------------------- /code/ho-ex-2.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/ho-ex-2.hs -------------------------------------------------------------------------------- /code/ho-ex-3.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/ho-ex-3.hs -------------------------------------------------------------------------------- /code/ho-maze.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/ho-maze.hs -------------------------------------------------------------------------------- /code/more-data-types-maze.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/more-data-types-maze.hs -------------------------------------------------------------------------------- /code/multiple-trafficlights-spread.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/multiple-trafficlights-spread.hs -------------------------------------------------------------------------------- /code/multiple-trafficlights.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/multiple-trafficlights.hs -------------------------------------------------------------------------------- /code/sokoban-ex1-sol.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/sokoban-ex1-sol.hs -------------------------------------------------------------------------------- /code/sokoban-ex1.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/sokoban-ex1.hs -------------------------------------------------------------------------------- /code/trafficController-solution.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/trafficController-solution.hs -------------------------------------------------------------------------------- /code/trafficController.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/trafficController.hs -------------------------------------------------------------------------------- /code/trafficlight.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/trafficlight.hs -------------------------------------------------------------------------------- /code/tree-bloom.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/tree-bloom.hs -------------------------------------------------------------------------------- /code/tree-folding.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/tree-folding.hs -------------------------------------------------------------------------------- /code/tree.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/code/tree.hs -------------------------------------------------------------------------------- /images/function-machine.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/images/function-machine.png -------------------------------------------------------------------------------- /images/haskell-logo-light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/images/haskell-logo-light.png -------------------------------------------------------------------------------- /images/haskell-logo-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/images/haskell-logo-small.png -------------------------------------------------------------------------------- /images/haskell-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/images/haskell-logo.png -------------------------------------------------------------------------------- /images/pure.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/images/pure.jpg -------------------------------------------------------------------------------- /images/relax.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/images/relax.jpg -------------------------------------------------------------------------------- /images/static.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/images/static.jpg -------------------------------------------------------------------------------- /spellcheck.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/spellcheck.sh -------------------------------------------------------------------------------- /static/Mazes.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/static/Mazes.hs -------------------------------------------------------------------------------- /static/inline-code.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/static/inline-code.css -------------------------------------------------------------------------------- /static/pandoc.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/static/pandoc.css -------------------------------------------------------------------------------- /static/solution.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/static/solution.css -------------------------------------------------------------------------------- /static/solution.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/static/solution.js -------------------------------------------------------------------------------- /subst.pl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/subst.pl -------------------------------------------------------------------------------- /upload.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/upload.sh -------------------------------------------------------------------------------- /wordlist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/wordlist -------------------------------------------------------------------------------- /write-files.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nomeata/haskell-via-sokoban/HEAD/write-files.hs --------------------------------------------------------------------------------