Skip to content

Latest commit

 

History

History
39 lines (26 loc) · 975 Bytes

README.md

File metadata and controls

39 lines (26 loc) · 975 Bytes

effects-toy

This repo includes implementations of a "Hello, world!" HTTP server in several extensible effects libraries. Currently, there are implementations using:

  • fused-effects
  • eff
  • polysemy

The task itself was based in this tutorial.

Running

You can run any implementation using:

stack run <package-name> # to run the server
./ghci <package-name> # start a nice ghci repl

# for example

stack run toy-fused-effects
stack run toy-eff
stack run toy-polysemy

Because eff and fused-effects use the same module names, we cannot load both at the same time :(

Development

This repo has a nice setup fot developing with VSCode and the ghcide extension.

After installing the extension above, you need to build ghcide:

stack build ghcide --copy-compiler-tool