https://github.com/declension/social-haskell
Haskell version of cm-challenge
https://github.com/declension/social-haskell
Last synced: about 1 year ago
JSON representation
Haskell version of cm-challenge
- Host: GitHub
- URL: https://github.com/declension/social-haskell
- Owner: declension
- Created: 2015-06-20T15:59:01.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2015-06-20T16:28:51.000Z (almost 11 years ago)
- Last Synced: 2025-02-01T10:12:03.310Z (over 1 year ago)
- Language: Haskell
- Homepage:
- Size: 152 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# social-haskell
[](https://drone.io/github.com/declension/social-haskell/latest)
### Background
Essentially, this is an exploratory piece / 'remix' using the same specification as the original CM challenge,
as [solved in Java 8 here](https://github.com/declension/cm-challenge).
Unsurpisingly, this brought to my attention the real-world differences between writing a stateful,
modular app with I/O in modern Java and modern (but amateur) Haskell..
### Tech
* Haskell + various standard libraries
* Cabal for building.
* The awesomeness of [Parsec](https://hackage.haskell.org/package/parsec) for combinatorial parsing... and free error diagnosis! (kinda).
* The very promising seeming [Hspec](http://hspec.github.io/) for Behavioural tests.
* Drone.io as a buildchain to run the build and test.
### TODO
* Use a State monad to handle the parse-execute loop state?
* Use Applicative style within testing? Or something at least...
the current skeleton integration tests could undoubtedly be made much more concise.
### License
For completeness, this should be included I guess, but hasn't.
Until something more formal (and permissive) strikes me, all code is © Declension Systems Ltd, 2015.