diff --git a/axel.cabal b/axel.cabal
--- a/axel.cabal
+++ b/axel.cabal
@@ -2,10 +2,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: 2c4cdd0178ad6519fe8100252b72565fbc261a394456c96838bcb397d9a9463d
+-- hash: e26c150d164cb5b9dc90bf0ba0d5a3697e068c1128d669d65b9c6edaa3f0f1b1
 
 name:           axel
-version:        0.0.2
+version:        0.0.3
 synopsis:       The Axel programming language.
 description:    Haskell's semantics, plus Lisp's macros. Meet Axel – a purely functional, extensible, and powerful programming language.
 category:       Language, Lisp, Macros, Transpiler
@@ -20,66 +20,7 @@
 cabal-version:  >= 1.10
 extra-source-files:
     examples/axelTemp/Axel.hs
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/autogen/Paths_do.dump-hi
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/autogen/cabal_macros.h
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/autogen/Paths_do.hs
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/autogen/cabal_macros.h
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/autogen/Paths_do.hs
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/autogen/Paths_do.dump-hi
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/app/Main.dump-hi
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/Main.hi
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/Main.o
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/Paths_do.hi
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/Paths_do.o
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Lib.dyn_hi
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Lib.dyn_o
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Lib.hi
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Lib.o
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/libHSdo-0.1.0.0-84i3CClUbe35xQ9SiCfZTm-ghc8.4.3.dylib
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/libHSdo-0.1.0.0-84i3CClUbe35xQ9SiCfZTm.a
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Paths_do.dyn_hi
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Paths_do.dyn_o
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Paths_do.hi
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Paths_do.o
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/src/Lib.dump-hi
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/package.conf.inplace/package.cache
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/package.conf.inplace/package.cache.lock
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/setup-config
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/stack-build-caches/exe-do-exe
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/stack-build-caches/lib
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/stack-build-caches/test-do-test
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/stack-cabal-mod
-    examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/stack-config-cache
-    examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/bin/do-exe
-    examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/doc/do-0.1.0.0/LICENSE
-    examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/flag-cache/do-0.1.0.0
-    examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/flag-cache/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm
-    examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm/Lib.dyn_hi
-    examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm/Lib.hi
-    examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm/libHSdo-0.1.0.0-84i3CClUbe35xQ9SiCfZTm.a
-    examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm/Paths_do.dyn_hi
-    examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm/Paths_do.hi
-    examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/libHSdo-0.1.0.0-84i3CClUbe35xQ9SiCfZTm-ghc8.4.3.dylib
-    examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/pkgdb/package.cache
-    examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/pkgdb/package.cache.lock
-    examples/do/.stack-work/intero/interokbXBrc-TEMP.hs
-    examples/do/.stack-work/intero/interoMkMX0r-TEMP.hs
-    examples/do/app/Main.axel
-    examples/do/app/Main.hs
-    examples/do/cabal.project.local
-    examples/do/dist-newstyle/cache/compiler
-    examples/do/dist-newstyle/cache/config
-    examples/do/dist-newstyle/cache/elaborated-plan
-    examples/do/dist-newstyle/cache/improved-plan
-    examples/do/dist-newstyle/cache/plan.json
-    examples/do/dist-newstyle/cache/solver-plan
-    examples/do/dist-newstyle/cache/source-hashes
-    examples/do/do.cabal
-    examples/do/package.yaml
-    examples/do/Setup.axel
-    examples/do/Setup.hs
-    examples/do/stack.yaml
+    examples/do.axel
     examples/example.axel
     README.org
     scripts/build.sh
diff --git a/examples/do.axel b/examples/do.axel
new file mode 100644
--- /dev/null
+++ b/examples/do.axel
@@ -0,0 +1,44 @@
+(module Main)
+
+(importq Axel.Parse.AST AST all)
+
+(defmacro quasiquote
+  (([(AST.SExpression xs)])
+   (let ((quasiquoteElem (fn (x) (case x
+                                   ((AST.SExpression ['unquote x])
+                                    (AST.SExpression ['list x]))
+                                   ((AST.SExpression ['unquoteSplicing x])
+                                    x)
+                                   (atom
+                                    (AST.SExpression
+                                     ['list
+                                      (AST.SExpression ['quasiquote atom])]))))))
+     (pure [(AST.SExpression ['AST.SExpression (AST.SExpression ['concat (AST.SExpression (: 'list (map quasiquoteElem xs)))])])])))
+  (([atom]) (pure [(AST.SExpression ['quote atom])])))
+
+(defmacro fnCase
+  ((cases) (<$> (fn (varId)
+                  [`(fn (~varId)
+                      (case ~varId ~@cases))])
+                AST.gensym)))
+
+(= do' (-> ([] AST.Expression) AST.Expression)
+   (() (fnCase
+        ((: var (: '<- (: val rest)))
+         `(>>= ~val (fn (~var) ~(do' rest))))
+        ((: val rest)
+         (case rest
+           ([]
+            val)
+           (_
+            `(>> ~val ~(do' rest))))))))
+
+(defmacro do
+  ((input)
+   (pure [(do' input)])))
+
+(= main (IO Unit)
+   (() (do
+         line <- getLine
+         (putStrLn line)
+         (pure unit))))
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/autogen/Paths_do.dump-hi b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/autogen/Paths_do.dump-hi
deleted file mode 100644
--- a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/autogen/Paths_do.dump-hi
+++ /dev/null
@@ -1,684 +0,0 @@
-
-==================== FINAL INTERFACE ====================
-2018-07-15 17:45:27.089979 UTC
-
-interface do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm:Paths_do 8043
-  interface hash: 8a6b24877e2c041a640c2573b20eec9b
-  ABI hash: 9413e47b4afdbd6a026fa37152a96d34
-  export-list hash: 99278b2b15a644460a543f8a69bec85e
-  orphan hash: 693e9af84d3dfcc71e640e005bdc5e2e
-  flag hash: 6710ad4f987f1a431885424795f1635c
-  opt_hash: 14e536840aca4e889cad654e6f9b79c1
-  hpc_hash: 93b885adfe0da089cdf634904fd59f71
-  sig of: Nothing
-  used TH splices: False
-  where
-exports:
-  Paths_do.getBinDir
-  Paths_do.getDataDir
-  Paths_do.getDataFileName
-  Paths_do.getDynLibDir
-  Paths_do.getLibDir
-  Paths_do.getLibexecDir
-  Paths_do.getSysconfDir
-  Paths_do.version
-module dependencies:
-package dependencies: base-4.11.1.0* ghc-prim-0.5.2.0
-                      integer-gmp-1.0.2.0
-orphans: base-4.11.1.0:GHC.Float base-4.11.1.0:GHC.Base
-family instance modules: base-4.11.1.0:Control.Applicative
-                         base-4.11.1.0:Data.Functor.Const
-                         base-4.11.1.0:Data.Functor.Identity base-4.11.1.0:Data.Monoid
-                         base-4.11.1.0:Data.Semigroup.Internal base-4.11.1.0:Data.Version
-                         base-4.11.1.0:GHC.Generics base-4.11.1.0:GHC.IO.Exception
-import  -/  base-4.11.1.0:Control.Exception 3d8e6cda20877f889f07bc7c0f5cac36
-import  -/  base-4.11.1.0:Data.Version 26b96b3dd83a23703e0b8110475fc04a
-import  -/  base-4.11.1.0:GHC.Base 604111500e81281298777e721c75643b
-import  -/  base-4.11.1.0:GHC.IO 1d5542cc02075c5e948018bfacea89c1
-import  -/  base-4.11.1.0:GHC.IO.Exception acc060dca2e46d8b8275d06ee7d5d60d
-import  -/  base-4.11.1.0:Prelude 0750c25585e2b797cd78291d423d39dd
-import  -/  base-4.11.1.0:System.Environment 052ec29b676ed8efc1decd97140a27e3
-import  -/  ghc-prim-0.5.2.0:GHC.Types d9b3023de7feae4a5308d643da5543f7
-addDependentFile "/Users/joshuagrosso/.stack/programs/x86_64-osx/ghc-8.4.3/lib/ghc-8.4.3/include/ghcversion.h" 61cc4580d32de09862d412848a79cd26
-addDependentFile ".stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/autogen/cabal_macros.h" 8ebbcb9eedf29cad69fe2495f497a96b
-c57e046abc78a35598639972a4a566fa
-  $trModule :: GHC.Types.Module
-  {- HasNoCafRefs, Strictness: m,
-     Unfolding: (GHC.Types.Module
-                   Paths_do.$trModule3
-                   Paths_do.$trModule1) -}
-78741a504e79c6ffd2606927a0022a9b
-  $trModule1 :: GHC.Types.TrName
-  {- HasNoCafRefs, Strictness: m1,
-     Unfolding: (GHC.Types.TrNameS Paths_do.$trModule2) -}
-358dcde9b37ca6e584151e01fa023f8a
-  $trModule2 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("Paths_do"#) -}
-ca5614d747e5b2c278622a48e15595ca
-  $trModule3 :: GHC.Types.TrName
-  {- HasNoCafRefs, Strictness: m1,
-     Unfolding: (GHC.Types.TrNameS Paths_do.$trModule4) -}
-4a29c906dc052300cc7d7d601a09763b
-  $trModule4 :: GHC.Prim.Addr#
-  {- HasNoCafRefs,
-     Unfolding: ("do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm"#) -}
-2b55da120651eab924a911272f6c36ba
-  getBinDir :: GHC.Types.IO GHC.IO.FilePath
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: InlineRule (0, True, True)
-                Paths_do.getBinDir1
-                  `cast`
-                (Sym (GHC.Types.N:IO[0] <GHC.Base.String>_R)) -}
-f8bf547a003736bd3d54b1549673c219
-  getBinDir1 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (eta :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 GHC.Prim.catch#
-                   @ GHC.Base.String
-                   @ GHC.Exception.SomeException
-                   Paths_do.getBinDir5
-                   Paths_do.getBinDir2
-                   eta) -}
-c66b050dfecf15f33552565c74595b9e
-  getBinDir2 ::
-    GHC.Exception.SomeException
-    -> GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 2, Strictness: <S,1*U><S,U>,
-     Unfolding: (\ (e1 :: GHC.Exception.SomeException)[OneShot]
-                   (eta :: GHC.Prim.State# GHC.Prim.RealWorld)[OneShot] ->
-                 case e1 of wild { GHC.Exception.SomeException e2 $dException1 e3 ->
-                 case Data.Typeable.Internal.typeRepFingerprint
-                        @ *
-                        @ e2
-                        (GHC.Exception.$p1Exception @ e2 $dException1)
-                          `cast`
-                        (Data.Typeable.Internal.N:Typeable[0] <*>_N <e2>_N) of wild1 { GHC.Fingerprint.Type.Fingerprint dt dt1 ->
-                 case GHC.IO.Exception.$fExceptionIOException4 of wild2 { GHC.Fingerprint.Type.Fingerprint dt2 dt3 ->
-                 case GHC.Prim.eqWord# dt dt2 of lwild {
-                   DEFAULT
-                   -> GHC.Prim.raiseIO#
-                        @ GHC.Exception.SomeException
-                        @ GHC.Base.String
-                        wild
-                        eta
-                   1#
-                   -> case GHC.Prim.eqWord# dt1 dt3 of lwild1 {
-                        DEFAULT
-                        -> GHC.Prim.raiseIO#
-                             @ GHC.Exception.SomeException
-                             @ GHC.Base.String
-                             wild
-                             eta
-                        1# -> (# eta, Paths_do.getBinDir3 #) } } } } }) -}
-da635f66603f599eeaa0a0c5dd8c093b
-  getBinDir3 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString# Paths_do.getBinDir4) -}
-d01c988397933d0073088f0623875190
-  getBinDir4 :: GHC.Prim.Addr#
-  {- HasNoCafRefs,
-     Unfolding: ("/Users/joshuagrosso/Desktop/axelExamples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/bin"#) -}
-9e6ffe18e6c3e42aea0e11f510fa8825
-  getBinDir5 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (s :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 case (GHC.Magic.noinline
-                         @ (GHC.Types.IO GHC.IO.Encoding.Types.TextEncoding)
-                         GHC.IO.Encoding.getForeignEncoding)
-                        `cast`
-                      (GHC.Types.N:IO[0] <GHC.IO.Encoding.Types.TextEncoding>_R)
-                        s of ds1 { (#,#) ipv ipv1 ->
-                 case GHC.Foreign.charIsRepresentable3
-                        @ (GHC.Base.Maybe GHC.Base.String)
-                        ipv1
-                        Paths_do.getBinDir6
-                        System.Environment.getEnv3
-                          `cast`
-                        (<Foreign.C.String.CString>_R
-                         ->_R Sym (GHC.Types.N:IO[0] <GHC.Base.Maybe GHC.Base.String>_R))
-                        ipv of ds2 { (#,#) ipv2 ipv3 ->
-                 case ipv3 of wild {
-                   GHC.Base.Nothing
-                   -> System.Environment.getEnv2 ipv2 Paths_do.getBinDir6
-                   GHC.Base.Just x -> (# ipv2, x #) } } }) -}
-b11d2d999362bf0d007a9ad70321dce4
-  getBinDir6 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString# Paths_do.getBinDir7) -}
-efc646dfd0116609c79fa25d88733c1e
-  getBinDir7 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("do_bindir"#) -}
-f44360444d4c09b9dbc85971ea69d816
-  getDataDir :: GHC.Types.IO GHC.IO.FilePath
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: InlineRule (0, True, True)
-                Paths_do.getDataDir1
-                  `cast`
-                (Sym (GHC.Types.N:IO[0] <GHC.Base.String>_R)) -}
-4aba064f1b3184ae27aca0d9bf3fb7c7
-  getDataDir1 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (eta :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 GHC.Prim.catch#
-                   @ GHC.Base.String
-                   @ GHC.Exception.SomeException
-                   Paths_do.getDataDir5
-                   Paths_do.getDataDir2
-                   eta) -}
-0a4ed7bfc3cdda6bb73707b6b8d390ad
-  getDataDir2 ::
-    GHC.Exception.SomeException
-    -> GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 2, Strictness: <S,1*U><S,U>,
-     Unfolding: (\ (e1 :: GHC.Exception.SomeException)[OneShot]
-                   (eta :: GHC.Prim.State# GHC.Prim.RealWorld)[OneShot] ->
-                 case e1 of wild { GHC.Exception.SomeException e2 $dException1 e3 ->
-                 case Data.Typeable.Internal.typeRepFingerprint
-                        @ *
-                        @ e2
-                        (GHC.Exception.$p1Exception @ e2 $dException1)
-                          `cast`
-                        (Data.Typeable.Internal.N:Typeable[0] <*>_N <e2>_N) of wild1 { GHC.Fingerprint.Type.Fingerprint dt dt1 ->
-                 case GHC.IO.Exception.$fExceptionIOException4 of wild2 { GHC.Fingerprint.Type.Fingerprint dt2 dt3 ->
-                 case GHC.Prim.eqWord# dt dt2 of lwild {
-                   DEFAULT
-                   -> GHC.Prim.raiseIO#
-                        @ GHC.Exception.SomeException
-                        @ GHC.Base.String
-                        wild
-                        eta
-                   1#
-                   -> case GHC.Prim.eqWord# dt1 dt3 of lwild1 {
-                        DEFAULT
-                        -> GHC.Prim.raiseIO#
-                             @ GHC.Exception.SomeException
-                             @ GHC.Base.String
-                             wild
-                             eta
-                        1# -> (# eta, Paths_do.getDataDir3 #) } } } } }) -}
-b39b5a1ddbc50354182ccdbb91edd93a
-  getDataDir3 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString# Paths_do.getDataDir4) -}
-a1dc14cda18e775c6823be166b771239
-  getDataDir4 :: GHC.Prim.Addr#
-  {- HasNoCafRefs,
-     Unfolding: ("/Users/joshuagrosso/Desktop/axelExamples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/share/x86_64-osx-ghc-8.4.3/do-0.1.0.0"#) -}
-d37e6888a9a46d30b04eb40597c89aa4
-  getDataDir5 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (s :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 case (GHC.Magic.noinline
-                         @ (GHC.Types.IO GHC.IO.Encoding.Types.TextEncoding)
-                         GHC.IO.Encoding.getForeignEncoding)
-                        `cast`
-                      (GHC.Types.N:IO[0] <GHC.IO.Encoding.Types.TextEncoding>_R)
-                        s of ds1 { (#,#) ipv ipv1 ->
-                 case GHC.Foreign.charIsRepresentable3
-                        @ (GHC.Base.Maybe GHC.Base.String)
-                        ipv1
-                        Paths_do.getDataDir6
-                        System.Environment.getEnv3
-                          `cast`
-                        (<Foreign.C.String.CString>_R
-                         ->_R Sym (GHC.Types.N:IO[0] <GHC.Base.Maybe GHC.Base.String>_R))
-                        ipv of ds2 { (#,#) ipv2 ipv3 ->
-                 case ipv3 of wild {
-                   GHC.Base.Nothing
-                   -> System.Environment.getEnv2 ipv2 Paths_do.getDataDir6
-                   GHC.Base.Just x -> (# ipv2, x #) } } }) -}
-681ed7d18ed12190b904bab2f49646b0
-  getDataDir6 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString# Paths_do.getDataDir7) -}
-90b0c67e31ea60dca19bfc43eabd73a9
-  getDataDir7 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("do_datadir"#) -}
-b759d1516f9295c32ecde66a9dbc263f
-  getDataFileName :: GHC.IO.FilePath -> GHC.Types.IO GHC.IO.FilePath
-  {- Arity: 2, Strictness: <L,U><S,U>,
-     Unfolding: InlineRule (0, True, True)
-                Paths_do.getDataFileName1
-                  `cast`
-                (<GHC.IO.FilePath>_R
-                 ->_R Sym (GHC.Types.N:IO[0] <GHC.IO.FilePath>_R)) -}
-c744ae5525d982e6baa8aa8f104a28db
-  getDataFileName1 ::
-    GHC.IO.FilePath
-    -> GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.IO.FilePath #)
-  {- Arity: 2, Strictness: <L,U><S,U>,
-     Unfolding: (\ (name :: GHC.IO.FilePath)
-                   (s :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 case GHC.Prim.catch#
-                        @ GHC.Base.String
-                        @ GHC.Exception.SomeException
-                        Paths_do.getDataDir5
-                        Paths_do.getDataDir2
-                        s of ds1 { (#,#) ipv ipv1 ->
-                 (# ipv,
-                    GHC.Base.++
-                      @ GHC.Types.Char
-                      ipv1
-                      (GHC.CString.unpackAppendCString#
-                         Paths_do.getDataFileName2
-                         name) #) }) -}
-6cff7f811444f6c73ea2e18b9096808d
-  getDataFileName2 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("/"#) -}
-ce3cf45c94ab37e6c334116a2ec17ff8
-  getDynLibDir :: GHC.Types.IO GHC.IO.FilePath
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: InlineRule (0, True, True)
-                Paths_do.getDynLibDir1
-                  `cast`
-                (Sym (GHC.Types.N:IO[0] <GHC.Base.String>_R)) -}
-e708a55f08c651ff3fdac9bc09ae1413
-  getDynLibDir1 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (eta :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 GHC.Prim.catch#
-                   @ GHC.Base.String
-                   @ GHC.Exception.SomeException
-                   Paths_do.getDynLibDir5
-                   Paths_do.getDynLibDir2
-                   eta) -}
-d147efc4972c46c13195eb04ad24daa1
-  getDynLibDir2 ::
-    GHC.Exception.SomeException
-    -> GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 2, Strictness: <S,1*U><S,U>,
-     Unfolding: (\ (e1 :: GHC.Exception.SomeException)[OneShot]
-                   (eta :: GHC.Prim.State# GHC.Prim.RealWorld)[OneShot] ->
-                 case e1 of wild { GHC.Exception.SomeException e2 $dException1 e3 ->
-                 case Data.Typeable.Internal.typeRepFingerprint
-                        @ *
-                        @ e2
-                        (GHC.Exception.$p1Exception @ e2 $dException1)
-                          `cast`
-                        (Data.Typeable.Internal.N:Typeable[0] <*>_N <e2>_N) of wild1 { GHC.Fingerprint.Type.Fingerprint dt dt1 ->
-                 case GHC.IO.Exception.$fExceptionIOException4 of wild2 { GHC.Fingerprint.Type.Fingerprint dt2 dt3 ->
-                 case GHC.Prim.eqWord# dt dt2 of lwild {
-                   DEFAULT
-                   -> GHC.Prim.raiseIO#
-                        @ GHC.Exception.SomeException
-                        @ GHC.Base.String
-                        wild
-                        eta
-                   1#
-                   -> case GHC.Prim.eqWord# dt1 dt3 of lwild1 {
-                        DEFAULT
-                        -> GHC.Prim.raiseIO#
-                             @ GHC.Exception.SomeException
-                             @ GHC.Base.String
-                             wild
-                             eta
-                        1# -> (# eta, Paths_do.getDynLibDir3 #) } } } } }) -}
-80e8ae10160f76ad3bd8f6c26b4ed1d5
-  getDynLibDir3 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString#
-                   Paths_do.getDynLibDir4) -}
-2228e787f921a77167ab7fdee4facc37
-  getDynLibDir4 :: GHC.Prim.Addr#
-  {- HasNoCafRefs,
-     Unfolding: ("/Users/joshuagrosso/Desktop/axelExamples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3"#) -}
-e651f3b4dc1c1f892da12698b11e6c6c
-  getDynLibDir5 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (s :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 case (GHC.Magic.noinline
-                         @ (GHC.Types.IO GHC.IO.Encoding.Types.TextEncoding)
-                         GHC.IO.Encoding.getForeignEncoding)
-                        `cast`
-                      (GHC.Types.N:IO[0] <GHC.IO.Encoding.Types.TextEncoding>_R)
-                        s of ds1 { (#,#) ipv ipv1 ->
-                 case GHC.Foreign.charIsRepresentable3
-                        @ (GHC.Base.Maybe GHC.Base.String)
-                        ipv1
-                        Paths_do.getDynLibDir6
-                        System.Environment.getEnv3
-                          `cast`
-                        (<Foreign.C.String.CString>_R
-                         ->_R Sym (GHC.Types.N:IO[0] <GHC.Base.Maybe GHC.Base.String>_R))
-                        ipv of ds2 { (#,#) ipv2 ipv3 ->
-                 case ipv3 of wild {
-                   GHC.Base.Nothing
-                   -> System.Environment.getEnv2 ipv2 Paths_do.getDynLibDir6
-                   GHC.Base.Just x -> (# ipv2, x #) } } }) -}
-a4f3f8c96b62e69de4301633e642b938
-  getDynLibDir6 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString#
-                   Paths_do.getDynLibDir7) -}
-1fbed99c85f1cec1d745f25e0105dcfb
-  getDynLibDir7 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("do_dynlibdir"#) -}
-28434084ccb4e8e966ab4c9ace20c216
-  getLibDir :: GHC.Types.IO GHC.IO.FilePath
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: InlineRule (0, True, True)
-                Paths_do.getLibDir1
-                  `cast`
-                (Sym (GHC.Types.N:IO[0] <GHC.Base.String>_R)) -}
-9b09f2c0978a97b53d583b3a0e589c9a
-  getLibDir1 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (eta :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 GHC.Prim.catch#
-                   @ GHC.Base.String
-                   @ GHC.Exception.SomeException
-                   Paths_do.getLibDir5
-                   Paths_do.getLibDir2
-                   eta) -}
-04f2d7c704c02c7a429e4891657c234d
-  getLibDir2 ::
-    GHC.Exception.SomeException
-    -> GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 2, Strictness: <S,1*U><S,U>,
-     Unfolding: (\ (e1 :: GHC.Exception.SomeException)[OneShot]
-                   (eta :: GHC.Prim.State# GHC.Prim.RealWorld)[OneShot] ->
-                 case e1 of wild { GHC.Exception.SomeException e2 $dException1 e3 ->
-                 case Data.Typeable.Internal.typeRepFingerprint
-                        @ *
-                        @ e2
-                        (GHC.Exception.$p1Exception @ e2 $dException1)
-                          `cast`
-                        (Data.Typeable.Internal.N:Typeable[0] <*>_N <e2>_N) of wild1 { GHC.Fingerprint.Type.Fingerprint dt dt1 ->
-                 case GHC.IO.Exception.$fExceptionIOException4 of wild2 { GHC.Fingerprint.Type.Fingerprint dt2 dt3 ->
-                 case GHC.Prim.eqWord# dt dt2 of lwild {
-                   DEFAULT
-                   -> GHC.Prim.raiseIO#
-                        @ GHC.Exception.SomeException
-                        @ GHC.Base.String
-                        wild
-                        eta
-                   1#
-                   -> case GHC.Prim.eqWord# dt1 dt3 of lwild1 {
-                        DEFAULT
-                        -> GHC.Prim.raiseIO#
-                             @ GHC.Exception.SomeException
-                             @ GHC.Base.String
-                             wild
-                             eta
-                        1# -> (# eta, Paths_do.getLibDir3 #) } } } } }) -}
-9064fff0734fe05644cd18636dbcc746
-  getLibDir3 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString# Paths_do.getLibDir4) -}
-e51b14ab968d6c13811d2cfb5db8f2a7
-  getLibDir4 :: GHC.Prim.Addr#
-  {- HasNoCafRefs,
-     Unfolding: ("/Users/joshuagrosso/Desktop/axelExamples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm"#) -}
-a9f275400111f967bf5803138019f1a1
-  getLibDir5 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (s :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 case (GHC.Magic.noinline
-                         @ (GHC.Types.IO GHC.IO.Encoding.Types.TextEncoding)
-                         GHC.IO.Encoding.getForeignEncoding)
-                        `cast`
-                      (GHC.Types.N:IO[0] <GHC.IO.Encoding.Types.TextEncoding>_R)
-                        s of ds1 { (#,#) ipv ipv1 ->
-                 case GHC.Foreign.charIsRepresentable3
-                        @ (GHC.Base.Maybe GHC.Base.String)
-                        ipv1
-                        Paths_do.getLibDir6
-                        System.Environment.getEnv3
-                          `cast`
-                        (<Foreign.C.String.CString>_R
-                         ->_R Sym (GHC.Types.N:IO[0] <GHC.Base.Maybe GHC.Base.String>_R))
-                        ipv of ds2 { (#,#) ipv2 ipv3 ->
-                 case ipv3 of wild {
-                   GHC.Base.Nothing
-                   -> System.Environment.getEnv2 ipv2 Paths_do.getLibDir6
-                   GHC.Base.Just x -> (# ipv2, x #) } } }) -}
-a4145c3139e109d07405334216056934
-  getLibDir6 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString# Paths_do.getLibDir7) -}
-b21d6f7183b4b036ec536551653bee25
-  getLibDir7 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("do_libdir"#) -}
-b8f97f95c094d3a9fc9a09cfe5abc0b3
-  getLibexecDir :: GHC.Types.IO GHC.IO.FilePath
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: InlineRule (0, True, True)
-                Paths_do.getLibexecDir1
-                  `cast`
-                (Sym (GHC.Types.N:IO[0] <GHC.Base.String>_R)) -}
-e3cd2fc0bf42994c8936dddf0aa85849
-  getLibexecDir1 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (eta :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 GHC.Prim.catch#
-                   @ GHC.Base.String
-                   @ GHC.Exception.SomeException
-                   Paths_do.getLibexecDir5
-                   Paths_do.getLibexecDir2
-                   eta) -}
-e9da585d5d1323d98dcc8874678f3020
-  getLibexecDir2 ::
-    GHC.Exception.SomeException
-    -> GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 2, Strictness: <S,1*U><S,U>,
-     Unfolding: (\ (e1 :: GHC.Exception.SomeException)[OneShot]
-                   (eta :: GHC.Prim.State# GHC.Prim.RealWorld)[OneShot] ->
-                 case e1 of wild { GHC.Exception.SomeException e2 $dException1 e3 ->
-                 case Data.Typeable.Internal.typeRepFingerprint
-                        @ *
-                        @ e2
-                        (GHC.Exception.$p1Exception @ e2 $dException1)
-                          `cast`
-                        (Data.Typeable.Internal.N:Typeable[0] <*>_N <e2>_N) of wild1 { GHC.Fingerprint.Type.Fingerprint dt dt1 ->
-                 case GHC.IO.Exception.$fExceptionIOException4 of wild2 { GHC.Fingerprint.Type.Fingerprint dt2 dt3 ->
-                 case GHC.Prim.eqWord# dt dt2 of lwild {
-                   DEFAULT
-                   -> GHC.Prim.raiseIO#
-                        @ GHC.Exception.SomeException
-                        @ GHC.Base.String
-                        wild
-                        eta
-                   1#
-                   -> case GHC.Prim.eqWord# dt1 dt3 of lwild1 {
-                        DEFAULT
-                        -> GHC.Prim.raiseIO#
-                             @ GHC.Exception.SomeException
-                             @ GHC.Base.String
-                             wild
-                             eta
-                        1# -> (# eta, Paths_do.getLibexecDir3 #) } } } } }) -}
-1708019c0ea778bcf24e1c76798b1ae6
-  getLibexecDir3 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString#
-                   Paths_do.getLibexecDir4) -}
-5c72aff51fc450743d476a936d238b8d
-  getLibexecDir4 :: GHC.Prim.Addr#
-  {- HasNoCafRefs,
-     Unfolding: ("/Users/joshuagrosso/Desktop/axelExamples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/libexec/x86_64-osx-ghc-8.4.3/do-0.1.0.0"#) -}
-3a019d0b9134af64ce7736ff1ac42a6c
-  getLibexecDir5 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (s :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 case (GHC.Magic.noinline
-                         @ (GHC.Types.IO GHC.IO.Encoding.Types.TextEncoding)
-                         GHC.IO.Encoding.getForeignEncoding)
-                        `cast`
-                      (GHC.Types.N:IO[0] <GHC.IO.Encoding.Types.TextEncoding>_R)
-                        s of ds1 { (#,#) ipv ipv1 ->
-                 case GHC.Foreign.charIsRepresentable3
-                        @ (GHC.Base.Maybe GHC.Base.String)
-                        ipv1
-                        Paths_do.getLibexecDir6
-                        System.Environment.getEnv3
-                          `cast`
-                        (<Foreign.C.String.CString>_R
-                         ->_R Sym (GHC.Types.N:IO[0] <GHC.Base.Maybe GHC.Base.String>_R))
-                        ipv of ds2 { (#,#) ipv2 ipv3 ->
-                 case ipv3 of wild {
-                   GHC.Base.Nothing
-                   -> System.Environment.getEnv2 ipv2 Paths_do.getLibexecDir6
-                   GHC.Base.Just x -> (# ipv2, x #) } } }) -}
-8375700bb9e6da4c2150433fac2f4015
-  getLibexecDir6 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString#
-                   Paths_do.getLibexecDir7) -}
-19ffa960493ddaa74c59a52d666d86ed
-  getLibexecDir7 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("do_libexecdir"#) -}
-6ef30fa29e9ce93dd78d7fafc1298db7
-  getSysconfDir :: GHC.Types.IO GHC.IO.FilePath
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: InlineRule (0, True, True)
-                Paths_do.getSysconfDir1
-                  `cast`
-                (Sym (GHC.Types.N:IO[0] <GHC.Base.String>_R)) -}
-3b0dcdfb41055b7b0fab2159ac49af0a
-  getSysconfDir1 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (eta :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 GHC.Prim.catch#
-                   @ GHC.Base.String
-                   @ GHC.Exception.SomeException
-                   Paths_do.getSysconfDir5
-                   Paths_do.getSysconfDir2
-                   eta) -}
-f68f9aca9464dd7c1cdcc89cc71fb5c0
-  getSysconfDir2 ::
-    GHC.Exception.SomeException
-    -> GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 2, Strictness: <S,1*U><S,U>,
-     Unfolding: (\ (e1 :: GHC.Exception.SomeException)[OneShot]
-                   (eta :: GHC.Prim.State# GHC.Prim.RealWorld)[OneShot] ->
-                 case e1 of wild { GHC.Exception.SomeException e2 $dException1 e3 ->
-                 case Data.Typeable.Internal.typeRepFingerprint
-                        @ *
-                        @ e2
-                        (GHC.Exception.$p1Exception @ e2 $dException1)
-                          `cast`
-                        (Data.Typeable.Internal.N:Typeable[0] <*>_N <e2>_N) of wild1 { GHC.Fingerprint.Type.Fingerprint dt dt1 ->
-                 case GHC.IO.Exception.$fExceptionIOException4 of wild2 { GHC.Fingerprint.Type.Fingerprint dt2 dt3 ->
-                 case GHC.Prim.eqWord# dt dt2 of lwild {
-                   DEFAULT
-                   -> GHC.Prim.raiseIO#
-                        @ GHC.Exception.SomeException
-                        @ GHC.Base.String
-                        wild
-                        eta
-                   1#
-                   -> case GHC.Prim.eqWord# dt1 dt3 of lwild1 {
-                        DEFAULT
-                        -> GHC.Prim.raiseIO#
-                             @ GHC.Exception.SomeException
-                             @ GHC.Base.String
-                             wild
-                             eta
-                        1# -> (# eta, Paths_do.getSysconfDir3 #) } } } } }) -}
-2f8149111097bf5d88c524ee5a89062f
-  getSysconfDir3 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString#
-                   Paths_do.getSysconfDir4) -}
-cb47ab3601c2dc72dd7998b5ac7cd2b7
-  getSysconfDir4 :: GHC.Prim.Addr#
-  {- HasNoCafRefs,
-     Unfolding: ("/Users/joshuagrosso/Desktop/axelExamples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/etc"#) -}
-86e31d9f2ada7c7cf34ae3cd3fbb61c7
-  getSysconfDir5 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (s :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 case (GHC.Magic.noinline
-                         @ (GHC.Types.IO GHC.IO.Encoding.Types.TextEncoding)
-                         GHC.IO.Encoding.getForeignEncoding)
-                        `cast`
-                      (GHC.Types.N:IO[0] <GHC.IO.Encoding.Types.TextEncoding>_R)
-                        s of ds1 { (#,#) ipv ipv1 ->
-                 case GHC.Foreign.charIsRepresentable3
-                        @ (GHC.Base.Maybe GHC.Base.String)
-                        ipv1
-                        Paths_do.getSysconfDir6
-                        System.Environment.getEnv3
-                          `cast`
-                        (<Foreign.C.String.CString>_R
-                         ->_R Sym (GHC.Types.N:IO[0] <GHC.Base.Maybe GHC.Base.String>_R))
-                        ipv of ds2 { (#,#) ipv2 ipv3 ->
-                 case ipv3 of wild {
-                   GHC.Base.Nothing
-                   -> System.Environment.getEnv2 ipv2 Paths_do.getSysconfDir6
-                   GHC.Base.Just x -> (# ipv2, x #) } } }) -}
-b41d294268e338acd6d3b5fec5e23c65
-  getSysconfDir6 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString#
-                   Paths_do.getSysconfDir7) -}
-971e5f0365dbd47354c716923122a482
-  getSysconfDir7 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("do_sysconfdir"#) -}
-bfd908180f8843d68ec791bf1af28a9c
-  version :: Data.Version.Version
-  {- HasNoCafRefs, Strictness: m,
-     Unfolding: (Data.Version.Version
-                   Paths_do.version1
-                   (GHC.Types.[] @ GHC.Base.String)) -}
-41f84f3995814c2dcfbb21b2dc4f9142
-  version1 :: [GHC.Types.Int]
-  {- HasNoCafRefs, Strictness: m2,
-     Unfolding: (GHC.Types.:
-                   @ GHC.Types.Int
-                   Paths_do.version5
-                   Paths_do.version2) -}
-9a64271f6f9b87a1d68a8597a1df7ae8
-  version2 :: [GHC.Types.Int]
-  {- HasNoCafRefs, Strictness: m2,
-     Unfolding: (GHC.Types.:
-                   @ GHC.Types.Int
-                   Paths_do.version6
-                   Paths_do.version3) -}
-72f5f38754f6f82244f78cbb0b598cfe
-  version3 :: [GHC.Types.Int]
-  {- HasNoCafRefs, Strictness: m2,
-     Unfolding: (GHC.Types.:
-                   @ GHC.Types.Int
-                   Paths_do.version5
-                   Paths_do.version4) -}
-e8bf2ecae3c114c9a039c9049d107645
-  version4 :: [GHC.Types.Int]
-  {- HasNoCafRefs, Strictness: m2,
-     Unfolding: (GHC.Types.:
-                   @ GHC.Types.Int
-                   Paths_do.version5
-                   (GHC.Types.[] @ GHC.Types.Int)) -}
-433c398dcf08c24afa7a8803ec541633
-  version5 :: GHC.Types.Int
-  {- HasNoCafRefs, Strictness: m, Unfolding: (GHC.Types.I# 0#) -}
-0bf085bcd8bbf186c82fd721407cc8a8
-  version6 :: GHC.Types.Int
-  {- HasNoCafRefs, Strictness: m, Unfolding: (GHC.Types.I# 1#) -}
-vectorised variables:
-vectorised tycons:
-vectorised reused tycons:
-parallel variables:
-parallel tycons:
-trusted: safe
-require own pkg trusted: False
-
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Lib.dyn_hi b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Lib.dyn_hi
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Lib.dyn_hi and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Lib.dyn_o b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Lib.dyn_o
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Lib.dyn_o and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Lib.hi b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Lib.hi
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Lib.hi and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Lib.o b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Lib.o
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Lib.o and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Paths_do.dyn_hi b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Paths_do.dyn_hi
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Paths_do.dyn_hi and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Paths_do.dyn_o b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Paths_do.dyn_o
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Paths_do.dyn_o and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Paths_do.hi b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Paths_do.hi
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Paths_do.hi and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Paths_do.o b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Paths_do.o
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/Paths_do.o and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/autogen/Paths_do.hs b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/autogen/Paths_do.hs
deleted file mode 100644
--- a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/autogen/Paths_do.hs
+++ /dev/null
@@ -1,50 +0,0 @@
-{-# LANGUAGE CPP #-}
-{-# LANGUAGE NoRebindableSyntax #-}
-{-# OPTIONS_GHC -fno-warn-missing-import-lists #-}
-module Paths_do (
-    version,
-    getBinDir, getLibDir, getDynLibDir, getDataDir, getLibexecDir,
-    getDataFileName, getSysconfDir
-  ) where
-
-import qualified Control.Exception as Exception
-import Data.Version (Version(..))
-import System.Environment (getEnv)
-import Prelude
-
-#if defined(VERSION_base)
-
-#if MIN_VERSION_base(4,0,0)
-catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a
-#else
-catchIO :: IO a -> (Exception.Exception -> IO a) -> IO a
-#endif
-
-#else
-catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a
-#endif
-catchIO = Exception.catch
-
-version :: Version
-version = Version [0,1,0,0] []
-bindir, libdir, dynlibdir, datadir, libexecdir, sysconfdir :: FilePath
-
-bindir     = "/Users/joshuagrosso/Desktop/axelExamples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/bin"
-libdir     = "/Users/joshuagrosso/Desktop/axelExamples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm"
-dynlibdir  = "/Users/joshuagrosso/Desktop/axelExamples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3"
-datadir    = "/Users/joshuagrosso/Desktop/axelExamples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/share/x86_64-osx-ghc-8.4.3/do-0.1.0.0"
-libexecdir = "/Users/joshuagrosso/Desktop/axelExamples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/libexec/x86_64-osx-ghc-8.4.3/do-0.1.0.0"
-sysconfdir = "/Users/joshuagrosso/Desktop/axelExamples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/etc"
-
-getBinDir, getLibDir, getDynLibDir, getDataDir, getLibexecDir, getSysconfDir :: IO FilePath
-getBinDir = catchIO (getEnv "do_bindir") (\_ -> return bindir)
-getLibDir = catchIO (getEnv "do_libdir") (\_ -> return libdir)
-getDynLibDir = catchIO (getEnv "do_dynlibdir") (\_ -> return dynlibdir)
-getDataDir = catchIO (getEnv "do_datadir") (\_ -> return datadir)
-getLibexecDir = catchIO (getEnv "do_libexecdir") (\_ -> return libexecdir)
-getSysconfDir = catchIO (getEnv "do_sysconfdir") (\_ -> return sysconfdir)
-
-getDataFileName :: FilePath -> IO FilePath
-getDataFileName name = do
-  dir <- getDataDir
-  return (dir ++ "/" ++ name)
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/autogen/cabal_macros.h b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/autogen/cabal_macros.h
deleted file mode 100644
--- a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/autogen/cabal_macros.h
+++ /dev/null
@@ -1,143 +0,0 @@
-/* DO NOT EDIT: This file is automatically generated by Cabal */
-
-/* package do-0.1.0.0 */
-#ifndef VERSION_do
-#define VERSION_do "0.1.0.0"
-#endif /* VERSION_do */
-#ifndef MIN_VERSION_do
-#define MIN_VERSION_do(major1,major2,minor) (\
-  (major1) <  0 || \
-  (major1) == 0 && (major2) <  1 || \
-  (major1) == 0 && (major2) == 1 && (minor) <= 0)
-#endif /* MIN_VERSION_do */
-
-/* package base-4.11.1.0 */
-#ifndef VERSION_base
-#define VERSION_base "4.11.1.0"
-#endif /* VERSION_base */
-#ifndef MIN_VERSION_base
-#define MIN_VERSION_base(major1,major2,minor) (\
-  (major1) <  4 || \
-  (major1) == 4 && (major2) <  11 || \
-  (major1) == 4 && (major2) == 11 && (minor) <= 1)
-#endif /* MIN_VERSION_base */
-
-/* tool cpphs-1.20.8 */
-#ifndef TOOL_VERSION_cpphs
-#define TOOL_VERSION_cpphs "1.20.8"
-#endif /* TOOL_VERSION_cpphs */
-#ifndef MIN_TOOL_VERSION_cpphs
-#define MIN_TOOL_VERSION_cpphs(major1,major2,minor) (\
-  (major1) <  1 || \
-  (major1) == 1 && (major2) <  20 || \
-  (major1) == 1 && (major2) == 20 && (minor) <= 8)
-#endif /* MIN_TOOL_VERSION_cpphs */
-
-/* tool gcc-4.2.1 */
-#ifndef TOOL_VERSION_gcc
-#define TOOL_VERSION_gcc "4.2.1"
-#endif /* TOOL_VERSION_gcc */
-#ifndef MIN_TOOL_VERSION_gcc
-#define MIN_TOOL_VERSION_gcc(major1,major2,minor) (\
-  (major1) <  4 || \
-  (major1) == 4 && (major2) <  2 || \
-  (major1) == 4 && (major2) == 2 && (minor) <= 1)
-#endif /* MIN_TOOL_VERSION_gcc */
-
-/* tool ghc-8.4.3 */
-#ifndef TOOL_VERSION_ghc
-#define TOOL_VERSION_ghc "8.4.3"
-#endif /* TOOL_VERSION_ghc */
-#ifndef MIN_TOOL_VERSION_ghc
-#define MIN_TOOL_VERSION_ghc(major1,major2,minor) (\
-  (major1) <  8 || \
-  (major1) == 8 && (major2) <  4 || \
-  (major1) == 8 && (major2) == 4 && (minor) <= 3)
-#endif /* MIN_TOOL_VERSION_ghc */
-
-/* tool ghc-pkg-8.4.3 */
-#ifndef TOOL_VERSION_ghc_pkg
-#define TOOL_VERSION_ghc_pkg "8.4.3"
-#endif /* TOOL_VERSION_ghc_pkg */
-#ifndef MIN_TOOL_VERSION_ghc_pkg
-#define MIN_TOOL_VERSION_ghc_pkg(major1,major2,minor) (\
-  (major1) <  8 || \
-  (major1) == 8 && (major2) <  4 || \
-  (major1) == 8 && (major2) == 4 && (minor) <= 3)
-#endif /* MIN_TOOL_VERSION_ghc_pkg */
-
-/* tool haddock-2.20.0 */
-#ifndef TOOL_VERSION_haddock
-#define TOOL_VERSION_haddock "2.20.0"
-#endif /* TOOL_VERSION_haddock */
-#ifndef MIN_TOOL_VERSION_haddock
-#define MIN_TOOL_VERSION_haddock(major1,major2,minor) (\
-  (major1) <  2 || \
-  (major1) == 2 && (major2) <  20 || \
-  (major1) == 2 && (major2) == 20 && (minor) <= 0)
-#endif /* MIN_TOOL_VERSION_haddock */
-
-/* tool happy-1.19.9 */
-#ifndef TOOL_VERSION_happy
-#define TOOL_VERSION_happy "1.19.9"
-#endif /* TOOL_VERSION_happy */
-#ifndef MIN_TOOL_VERSION_happy
-#define MIN_TOOL_VERSION_happy(major1,major2,minor) (\
-  (major1) <  1 || \
-  (major1) == 1 && (major2) <  19 || \
-  (major1) == 1 && (major2) == 19 && (minor) <= 9)
-#endif /* MIN_TOOL_VERSION_happy */
-
-/* tool hpc-0.67 */
-#ifndef TOOL_VERSION_hpc
-#define TOOL_VERSION_hpc "0.67"
-#endif /* TOOL_VERSION_hpc */
-#ifndef MIN_TOOL_VERSION_hpc
-#define MIN_TOOL_VERSION_hpc(major1,major2,minor) (\
-  (major1) <  0 || \
-  (major1) == 0 && (major2) <  67 || \
-  (major1) == 0 && (major2) == 67 && (minor) <= 0)
-#endif /* MIN_TOOL_VERSION_hpc */
-
-/* tool hsc2hs-0.68.3 */
-#ifndef TOOL_VERSION_hsc2hs
-#define TOOL_VERSION_hsc2hs "0.68.3"
-#endif /* TOOL_VERSION_hsc2hs */
-#ifndef MIN_TOOL_VERSION_hsc2hs
-#define MIN_TOOL_VERSION_hsc2hs(major1,major2,minor) (\
-  (major1) <  0 || \
-  (major1) == 0 && (major2) <  68 || \
-  (major1) == 0 && (major2) == 68 && (minor) <= 3)
-#endif /* MIN_TOOL_VERSION_hsc2hs */
-
-/* tool pkg-config-0.29.2 */
-#ifndef TOOL_VERSION_pkg_config
-#define TOOL_VERSION_pkg_config "0.29.2"
-#endif /* TOOL_VERSION_pkg_config */
-#ifndef MIN_TOOL_VERSION_pkg_config
-#define MIN_TOOL_VERSION_pkg_config(major1,major2,minor) (\
-  (major1) <  0 || \
-  (major1) == 0 && (major2) <  29 || \
-  (major1) == 0 && (major2) == 29 && (minor) <= 2)
-#endif /* MIN_TOOL_VERSION_pkg_config */
-
-/* tool runghc-8.4.3 */
-#ifndef TOOL_VERSION_runghc
-#define TOOL_VERSION_runghc "8.4.3"
-#endif /* TOOL_VERSION_runghc */
-#ifndef MIN_TOOL_VERSION_runghc
-#define MIN_TOOL_VERSION_runghc(major1,major2,minor) (\
-  (major1) <  8 || \
-  (major1) == 8 && (major2) <  4 || \
-  (major1) == 8 && (major2) == 4 && (minor) <= 3)
-#endif /* MIN_TOOL_VERSION_runghc */
-
-#ifndef CURRENT_PACKAGE_KEY
-#define CURRENT_PACKAGE_KEY "do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm"
-#endif /* CURRENT_PACKAGE_KEY */
-#ifndef CURRENT_COMPONENT_ID
-#define CURRENT_COMPONENT_ID "do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm"
-#endif /* CURRENT_COMPONENT_ID */
-#ifndef CURRENT_PACKAGE_VERSION
-#define CURRENT_PACKAGE_VERSION "0.1.0.0"
-#endif /* CURRENT_PACKAGE_VERSION */
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/autogen/Paths_do.hs b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/autogen/Paths_do.hs
deleted file mode 100644
--- a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/autogen/Paths_do.hs
+++ /dev/null
@@ -1,50 +0,0 @@
-{-# LANGUAGE CPP #-}
-{-# LANGUAGE NoRebindableSyntax #-}
-{-# OPTIONS_GHC -fno-warn-missing-import-lists #-}
-module Paths_do (
-    version,
-    getBinDir, getLibDir, getDynLibDir, getDataDir, getLibexecDir,
-    getDataFileName, getSysconfDir
-  ) where
-
-import qualified Control.Exception as Exception
-import Data.Version (Version(..))
-import System.Environment (getEnv)
-import Prelude
-
-#if defined(VERSION_base)
-
-#if MIN_VERSION_base(4,0,0)
-catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a
-#else
-catchIO :: IO a -> (Exception.Exception -> IO a) -> IO a
-#endif
-
-#else
-catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a
-#endif
-catchIO = Exception.catch
-
-version :: Version
-version = Version [0,1,0,0] []
-bindir, libdir, dynlibdir, datadir, libexecdir, sysconfdir :: FilePath
-
-bindir     = "/Users/joshuagrosso/Repositories/axel/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/bin"
-libdir     = "/Users/joshuagrosso/Repositories/axel/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm-do-exe"
-dynlibdir  = "/Users/joshuagrosso/Repositories/axel/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3"
-datadir    = "/Users/joshuagrosso/Repositories/axel/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/share/x86_64-osx-ghc-8.4.3/do-0.1.0.0"
-libexecdir = "/Users/joshuagrosso/Repositories/axel/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/libexec/x86_64-osx-ghc-8.4.3/do-0.1.0.0"
-sysconfdir = "/Users/joshuagrosso/Repositories/axel/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/etc"
-
-getBinDir, getLibDir, getDynLibDir, getDataDir, getLibexecDir, getSysconfDir :: IO FilePath
-getBinDir = catchIO (getEnv "do_bindir") (\_ -> return bindir)
-getLibDir = catchIO (getEnv "do_libdir") (\_ -> return libdir)
-getDynLibDir = catchIO (getEnv "do_dynlibdir") (\_ -> return dynlibdir)
-getDataDir = catchIO (getEnv "do_datadir") (\_ -> return datadir)
-getLibexecDir = catchIO (getEnv "do_libexecdir") (\_ -> return libexecdir)
-getSysconfDir = catchIO (getEnv "do_sysconfdir") (\_ -> return sysconfdir)
-
-getDataFileName :: FilePath -> IO FilePath
-getDataFileName name = do
-  dir <- getDataDir
-  return (dir ++ "/" ++ name)
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/autogen/cabal_macros.h b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/autogen/cabal_macros.h
deleted file mode 100644
--- a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/autogen/cabal_macros.h
+++ /dev/null
@@ -1,140 +0,0 @@
-/* DO NOT EDIT: This file is automatically generated by Cabal */
-
-/* package do-0.1.0.0 */
-#ifndef VERSION_do
-#define VERSION_do "0.1.0.0"
-#endif /* VERSION_do */
-#ifndef MIN_VERSION_do
-#define MIN_VERSION_do(major1,major2,minor) (\
-  (major1) <  0 || \
-  (major1) == 0 && (major2) <  1 || \
-  (major1) == 0 && (major2) == 1 && (minor) <= 0)
-#endif /* MIN_VERSION_do */
-
-/* package base-4.11.1.0 */
-#ifndef VERSION_base
-#define VERSION_base "4.11.1.0"
-#endif /* VERSION_base */
-#ifndef MIN_VERSION_base
-#define MIN_VERSION_base(major1,major2,minor) (\
-  (major1) <  4 || \
-  (major1) == 4 && (major2) <  11 || \
-  (major1) == 4 && (major2) == 11 && (minor) <= 1)
-#endif /* MIN_VERSION_base */
-
-/* tool cpphs-1.20.8 */
-#ifndef TOOL_VERSION_cpphs
-#define TOOL_VERSION_cpphs "1.20.8"
-#endif /* TOOL_VERSION_cpphs */
-#ifndef MIN_TOOL_VERSION_cpphs
-#define MIN_TOOL_VERSION_cpphs(major1,major2,minor) (\
-  (major1) <  1 || \
-  (major1) == 1 && (major2) <  20 || \
-  (major1) == 1 && (major2) == 20 && (minor) <= 8)
-#endif /* MIN_TOOL_VERSION_cpphs */
-
-/* tool gcc-4.2.1 */
-#ifndef TOOL_VERSION_gcc
-#define TOOL_VERSION_gcc "4.2.1"
-#endif /* TOOL_VERSION_gcc */
-#ifndef MIN_TOOL_VERSION_gcc
-#define MIN_TOOL_VERSION_gcc(major1,major2,minor) (\
-  (major1) <  4 || \
-  (major1) == 4 && (major2) <  2 || \
-  (major1) == 4 && (major2) == 2 && (minor) <= 1)
-#endif /* MIN_TOOL_VERSION_gcc */
-
-/* tool ghc-8.4.3 */
-#ifndef TOOL_VERSION_ghc
-#define TOOL_VERSION_ghc "8.4.3"
-#endif /* TOOL_VERSION_ghc */
-#ifndef MIN_TOOL_VERSION_ghc
-#define MIN_TOOL_VERSION_ghc(major1,major2,minor) (\
-  (major1) <  8 || \
-  (major1) == 8 && (major2) <  4 || \
-  (major1) == 8 && (major2) == 4 && (minor) <= 3)
-#endif /* MIN_TOOL_VERSION_ghc */
-
-/* tool ghc-pkg-8.4.3 */
-#ifndef TOOL_VERSION_ghc_pkg
-#define TOOL_VERSION_ghc_pkg "8.4.3"
-#endif /* TOOL_VERSION_ghc_pkg */
-#ifndef MIN_TOOL_VERSION_ghc_pkg
-#define MIN_TOOL_VERSION_ghc_pkg(major1,major2,minor) (\
-  (major1) <  8 || \
-  (major1) == 8 && (major2) <  4 || \
-  (major1) == 8 && (major2) == 4 && (minor) <= 3)
-#endif /* MIN_TOOL_VERSION_ghc_pkg */
-
-/* tool haddock-2.20.0 */
-#ifndef TOOL_VERSION_haddock
-#define TOOL_VERSION_haddock "2.20.0"
-#endif /* TOOL_VERSION_haddock */
-#ifndef MIN_TOOL_VERSION_haddock
-#define MIN_TOOL_VERSION_haddock(major1,major2,minor) (\
-  (major1) <  2 || \
-  (major1) == 2 && (major2) <  20 || \
-  (major1) == 2 && (major2) == 20 && (minor) <= 0)
-#endif /* MIN_TOOL_VERSION_haddock */
-
-/* tool happy-1.19.9 */
-#ifndef TOOL_VERSION_happy
-#define TOOL_VERSION_happy "1.19.9"
-#endif /* TOOL_VERSION_happy */
-#ifndef MIN_TOOL_VERSION_happy
-#define MIN_TOOL_VERSION_happy(major1,major2,minor) (\
-  (major1) <  1 || \
-  (major1) == 1 && (major2) <  19 || \
-  (major1) == 1 && (major2) == 19 && (minor) <= 9)
-#endif /* MIN_TOOL_VERSION_happy */
-
-/* tool hpc-0.67 */
-#ifndef TOOL_VERSION_hpc
-#define TOOL_VERSION_hpc "0.67"
-#endif /* TOOL_VERSION_hpc */
-#ifndef MIN_TOOL_VERSION_hpc
-#define MIN_TOOL_VERSION_hpc(major1,major2,minor) (\
-  (major1) <  0 || \
-  (major1) == 0 && (major2) <  67 || \
-  (major1) == 0 && (major2) == 67 && (minor) <= 0)
-#endif /* MIN_TOOL_VERSION_hpc */
-
-/* tool hsc2hs-0.68.3 */
-#ifndef TOOL_VERSION_hsc2hs
-#define TOOL_VERSION_hsc2hs "0.68.3"
-#endif /* TOOL_VERSION_hsc2hs */
-#ifndef MIN_TOOL_VERSION_hsc2hs
-#define MIN_TOOL_VERSION_hsc2hs(major1,major2,minor) (\
-  (major1) <  0 || \
-  (major1) == 0 && (major2) <  68 || \
-  (major1) == 0 && (major2) == 68 && (minor) <= 3)
-#endif /* MIN_TOOL_VERSION_hsc2hs */
-
-/* tool pkg-config-0.29.2 */
-#ifndef TOOL_VERSION_pkg_config
-#define TOOL_VERSION_pkg_config "0.29.2"
-#endif /* TOOL_VERSION_pkg_config */
-#ifndef MIN_TOOL_VERSION_pkg_config
-#define MIN_TOOL_VERSION_pkg_config(major1,major2,minor) (\
-  (major1) <  0 || \
-  (major1) == 0 && (major2) <  29 || \
-  (major1) == 0 && (major2) == 29 && (minor) <= 2)
-#endif /* MIN_TOOL_VERSION_pkg_config */
-
-/* tool runghc-8.4.3 */
-#ifndef TOOL_VERSION_runghc
-#define TOOL_VERSION_runghc "8.4.3"
-#endif /* TOOL_VERSION_runghc */
-#ifndef MIN_TOOL_VERSION_runghc
-#define MIN_TOOL_VERSION_runghc(major1,major2,minor) (\
-  (major1) <  8 || \
-  (major1) == 8 && (major2) <  4 || \
-  (major1) == 8 && (major2) == 4 && (minor) <= 3)
-#endif /* MIN_TOOL_VERSION_runghc */
-
-#ifndef CURRENT_COMPONENT_ID
-#define CURRENT_COMPONENT_ID "do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm-do-exe"
-#endif /* CURRENT_COMPONENT_ID */
-#ifndef CURRENT_PACKAGE_VERSION
-#define CURRENT_PACKAGE_VERSION "0.1.0.0"
-#endif /* CURRENT_PACKAGE_VERSION */
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/autogen/Paths_do.dump-hi b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/autogen/Paths_do.dump-hi
deleted file mode 100644
--- a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/autogen/Paths_do.dump-hi
+++ /dev/null
@@ -1,683 +0,0 @@
-
-==================== FINAL INTERFACE ====================
-2018-07-21 20:15:37.503764 UTC
-
-interface main:Paths_do 8043
-  interface hash: a886ff56bec2e4b12e1123a266faddfc
-  ABI hash: 95efa516fb84f4e58d2bb26e366de57b
-  export-list hash: 9f55ecce0fa3dc51afd0d748bb3f3c8e
-  orphan hash: 693e9af84d3dfcc71e640e005bdc5e2e
-  flag hash: a2b2624acc260212a08b0086ae9fbec4
-  opt_hash: 14e536840aca4e889cad654e6f9b79c1
-  hpc_hash: 93b885adfe0da089cdf634904fd59f71
-  sig of: Nothing
-  used TH splices: False
-  where
-exports:
-  Paths_do.getBinDir
-  Paths_do.getDataDir
-  Paths_do.getDataFileName
-  Paths_do.getDynLibDir
-  Paths_do.getLibDir
-  Paths_do.getLibexecDir
-  Paths_do.getSysconfDir
-  Paths_do.version
-module dependencies:
-package dependencies: base-4.11.1.0* ghc-prim-0.5.2.0
-                      integer-gmp-1.0.2.0
-orphans: base-4.11.1.0:GHC.Float base-4.11.1.0:GHC.Base
-family instance modules: base-4.11.1.0:Control.Applicative
-                         base-4.11.1.0:Data.Functor.Const
-                         base-4.11.1.0:Data.Functor.Identity base-4.11.1.0:Data.Monoid
-                         base-4.11.1.0:Data.Semigroup.Internal base-4.11.1.0:Data.Version
-                         base-4.11.1.0:GHC.Generics base-4.11.1.0:GHC.IO.Exception
-import  -/  base-4.11.1.0:Control.Exception 3d8e6cda20877f889f07bc7c0f5cac36
-import  -/  base-4.11.1.0:Data.Version 26b96b3dd83a23703e0b8110475fc04a
-import  -/  base-4.11.1.0:GHC.Base 604111500e81281298777e721c75643b
-import  -/  base-4.11.1.0:GHC.IO 1d5542cc02075c5e948018bfacea89c1
-import  -/  base-4.11.1.0:GHC.IO.Exception acc060dca2e46d8b8275d06ee7d5d60d
-import  -/  base-4.11.1.0:Prelude 0750c25585e2b797cd78291d423d39dd
-import  -/  base-4.11.1.0:System.Environment 052ec29b676ed8efc1decd97140a27e3
-import  -/  ghc-prim-0.5.2.0:GHC.Types d9b3023de7feae4a5308d643da5543f7
-addDependentFile "/Users/joshuagrosso/.stack/programs/x86_64-osx/ghc-8.4.3/lib/ghc-8.4.3/include/ghcversion.h" 61cc4580d32de09862d412848a79cd26
-addDependentFile ".stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/autogen/cabal_macros.h" 7db16f881bfe8d311cbfa36a66a015d4
-0b1fec1f1f0d996f698d788efa895b7d
-  $trModule :: GHC.Types.Module
-  {- HasNoCafRefs, Strictness: m,
-     Unfolding: (GHC.Types.Module
-                   Paths_do.$trModule3
-                   Paths_do.$trModule1) -}
-83fa3e87d0fd713542670b8df51fcb44
-  $trModule1 :: GHC.Types.TrName
-  {- HasNoCafRefs, Strictness: m1,
-     Unfolding: (GHC.Types.TrNameS Paths_do.$trModule2) -}
-bee664998906fc944a58d55ac6889ec9
-  $trModule2 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("Paths_do"#) -}
-20d8916e53600657c2e4d98a7d8ed810
-  $trModule3 :: GHC.Types.TrName
-  {- HasNoCafRefs, Strictness: m1,
-     Unfolding: (GHC.Types.TrNameS Paths_do.$trModule4) -}
-6774634052e0e5c6ce92ae2176ada8da
-  $trModule4 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("main"#) -}
-0ccd6783d419708f754a4b0d186b375e
-  getBinDir :: GHC.Types.IO GHC.IO.FilePath
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: InlineRule (0, True, True)
-                Paths_do.getBinDir1
-                  `cast`
-                (Sym (GHC.Types.N:IO[0] <GHC.Base.String>_R)) -}
-b0be28d7c8bc6f09601f56066dcbd602
-  getBinDir1 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (eta :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 GHC.Prim.catch#
-                   @ GHC.Base.String
-                   @ GHC.Exception.SomeException
-                   Paths_do.getBinDir5
-                   Paths_do.getBinDir2
-                   eta) -}
-8efe4cd08bddf1334099040a43125fb5
-  getBinDir2 ::
-    GHC.Exception.SomeException
-    -> GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 2, Strictness: <S,1*U><S,U>,
-     Unfolding: (\ (e1 :: GHC.Exception.SomeException)[OneShot]
-                   (eta :: GHC.Prim.State# GHC.Prim.RealWorld)[OneShot] ->
-                 case e1 of wild { GHC.Exception.SomeException e2 $dException1 e3 ->
-                 case Data.Typeable.Internal.typeRepFingerprint
-                        @ *
-                        @ e2
-                        (GHC.Exception.$p1Exception @ e2 $dException1)
-                          `cast`
-                        (Data.Typeable.Internal.N:Typeable[0] <*>_N <e2>_N) of wild1 { GHC.Fingerprint.Type.Fingerprint dt dt1 ->
-                 case GHC.IO.Exception.$fExceptionIOException4 of wild2 { GHC.Fingerprint.Type.Fingerprint dt2 dt3 ->
-                 case GHC.Prim.eqWord# dt dt2 of lwild {
-                   DEFAULT
-                   -> GHC.Prim.raiseIO#
-                        @ GHC.Exception.SomeException
-                        @ GHC.Base.String
-                        wild
-                        eta
-                   1#
-                   -> case GHC.Prim.eqWord# dt1 dt3 of lwild1 {
-                        DEFAULT
-                        -> GHC.Prim.raiseIO#
-                             @ GHC.Exception.SomeException
-                             @ GHC.Base.String
-                             wild
-                             eta
-                        1# -> (# eta, Paths_do.getBinDir3 #) } } } } }) -}
-790a62421a721b9c13a5a50bff3b0a9c
-  getBinDir3 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString# Paths_do.getBinDir4) -}
-ecfcbe459863ffd5657a8a3a87b7f460
-  getBinDir4 :: GHC.Prim.Addr#
-  {- HasNoCafRefs,
-     Unfolding: ("/Users/joshuagrosso/Repositories/axel/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/bin"#) -}
-aebfb8acae485a01469038d766b203b9
-  getBinDir5 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (s :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 case (GHC.Magic.noinline
-                         @ (GHC.Types.IO GHC.IO.Encoding.Types.TextEncoding)
-                         GHC.IO.Encoding.getForeignEncoding)
-                        `cast`
-                      (GHC.Types.N:IO[0] <GHC.IO.Encoding.Types.TextEncoding>_R)
-                        s of ds1 { (#,#) ipv ipv1 ->
-                 case GHC.Foreign.charIsRepresentable3
-                        @ (GHC.Base.Maybe GHC.Base.String)
-                        ipv1
-                        Paths_do.getBinDir6
-                        System.Environment.getEnv3
-                          `cast`
-                        (<Foreign.C.String.CString>_R
-                         ->_R Sym (GHC.Types.N:IO[0] <GHC.Base.Maybe GHC.Base.String>_R))
-                        ipv of ds2 { (#,#) ipv2 ipv3 ->
-                 case ipv3 of wild {
-                   GHC.Base.Nothing
-                   -> System.Environment.getEnv2 ipv2 Paths_do.getBinDir6
-                   GHC.Base.Just x -> (# ipv2, x #) } } }) -}
-100b3841e3db4226308258e6aa076373
-  getBinDir6 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString# Paths_do.getBinDir7) -}
-a8334d1fa12fe99be25f877c9839d5ae
-  getBinDir7 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("do_bindir"#) -}
-96409e56b3a205325fde7f5ee69ed741
-  getDataDir :: GHC.Types.IO GHC.IO.FilePath
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: InlineRule (0, True, True)
-                Paths_do.getDataDir1
-                  `cast`
-                (Sym (GHC.Types.N:IO[0] <GHC.Base.String>_R)) -}
-deb8cf5faa4f989a4b333ef1a3c520f2
-  getDataDir1 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (eta :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 GHC.Prim.catch#
-                   @ GHC.Base.String
-                   @ GHC.Exception.SomeException
-                   Paths_do.getDataDir5
-                   Paths_do.getDataDir2
-                   eta) -}
-98d8986ee1f4915cd924fdebd84ef90a
-  getDataDir2 ::
-    GHC.Exception.SomeException
-    -> GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 2, Strictness: <S,1*U><S,U>,
-     Unfolding: (\ (e1 :: GHC.Exception.SomeException)[OneShot]
-                   (eta :: GHC.Prim.State# GHC.Prim.RealWorld)[OneShot] ->
-                 case e1 of wild { GHC.Exception.SomeException e2 $dException1 e3 ->
-                 case Data.Typeable.Internal.typeRepFingerprint
-                        @ *
-                        @ e2
-                        (GHC.Exception.$p1Exception @ e2 $dException1)
-                          `cast`
-                        (Data.Typeable.Internal.N:Typeable[0] <*>_N <e2>_N) of wild1 { GHC.Fingerprint.Type.Fingerprint dt dt1 ->
-                 case GHC.IO.Exception.$fExceptionIOException4 of wild2 { GHC.Fingerprint.Type.Fingerprint dt2 dt3 ->
-                 case GHC.Prim.eqWord# dt dt2 of lwild {
-                   DEFAULT
-                   -> GHC.Prim.raiseIO#
-                        @ GHC.Exception.SomeException
-                        @ GHC.Base.String
-                        wild
-                        eta
-                   1#
-                   -> case GHC.Prim.eqWord# dt1 dt3 of lwild1 {
-                        DEFAULT
-                        -> GHC.Prim.raiseIO#
-                             @ GHC.Exception.SomeException
-                             @ GHC.Base.String
-                             wild
-                             eta
-                        1# -> (# eta, Paths_do.getDataDir3 #) } } } } }) -}
-8c2dc665e9074ad6beca0dbe4abc761d
-  getDataDir3 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString# Paths_do.getDataDir4) -}
-9259122ea3a8d59ef8464d2a8c3a3825
-  getDataDir4 :: GHC.Prim.Addr#
-  {- HasNoCafRefs,
-     Unfolding: ("/Users/joshuagrosso/Repositories/axel/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/share/x86_64-osx-ghc-8.4.3/do-0.1.0.0"#) -}
-fb694e9223f5a8f8365ddd92be9b40d8
-  getDataDir5 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (s :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 case (GHC.Magic.noinline
-                         @ (GHC.Types.IO GHC.IO.Encoding.Types.TextEncoding)
-                         GHC.IO.Encoding.getForeignEncoding)
-                        `cast`
-                      (GHC.Types.N:IO[0] <GHC.IO.Encoding.Types.TextEncoding>_R)
-                        s of ds1 { (#,#) ipv ipv1 ->
-                 case GHC.Foreign.charIsRepresentable3
-                        @ (GHC.Base.Maybe GHC.Base.String)
-                        ipv1
-                        Paths_do.getDataDir6
-                        System.Environment.getEnv3
-                          `cast`
-                        (<Foreign.C.String.CString>_R
-                         ->_R Sym (GHC.Types.N:IO[0] <GHC.Base.Maybe GHC.Base.String>_R))
-                        ipv of ds2 { (#,#) ipv2 ipv3 ->
-                 case ipv3 of wild {
-                   GHC.Base.Nothing
-                   -> System.Environment.getEnv2 ipv2 Paths_do.getDataDir6
-                   GHC.Base.Just x -> (# ipv2, x #) } } }) -}
-38d6516ecc04c4d4217a1c2541ab8414
-  getDataDir6 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString# Paths_do.getDataDir7) -}
-b35ea92e810f50fdd080319d08b85d29
-  getDataDir7 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("do_datadir"#) -}
-c7d45bad78752536da27c6f44223a0af
-  getDataFileName :: GHC.IO.FilePath -> GHC.Types.IO GHC.IO.FilePath
-  {- Arity: 2, Strictness: <L,U><S,U>,
-     Unfolding: InlineRule (0, True, True)
-                Paths_do.getDataFileName1
-                  `cast`
-                (<GHC.IO.FilePath>_R
-                 ->_R Sym (GHC.Types.N:IO[0] <GHC.IO.FilePath>_R)) -}
-38f467ac188e4d10bd8b3d2b71727051
-  getDataFileName1 ::
-    GHC.IO.FilePath
-    -> GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.IO.FilePath #)
-  {- Arity: 2, Strictness: <L,U><S,U>,
-     Unfolding: (\ (name :: GHC.IO.FilePath)
-                   (s :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 case GHC.Prim.catch#
-                        @ GHC.Base.String
-                        @ GHC.Exception.SomeException
-                        Paths_do.getDataDir5
-                        Paths_do.getDataDir2
-                        s of ds1 { (#,#) ipv ipv1 ->
-                 (# ipv,
-                    GHC.Base.++
-                      @ GHC.Types.Char
-                      ipv1
-                      (GHC.CString.unpackAppendCString#
-                         Paths_do.getDataFileName2
-                         name) #) }) -}
-333c86fef7f261f72d508f889cf0b087
-  getDataFileName2 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("/"#) -}
-50712cec1e0c169c1b3bb42652cef1ce
-  getDynLibDir :: GHC.Types.IO GHC.IO.FilePath
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: InlineRule (0, True, True)
-                Paths_do.getDynLibDir1
-                  `cast`
-                (Sym (GHC.Types.N:IO[0] <GHC.Base.String>_R)) -}
-64fb6babf8e46cba2be3747767d58c19
-  getDynLibDir1 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (eta :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 GHC.Prim.catch#
-                   @ GHC.Base.String
-                   @ GHC.Exception.SomeException
-                   Paths_do.getDynLibDir5
-                   Paths_do.getDynLibDir2
-                   eta) -}
-244004d07465c250c9c6a59e91a01acd
-  getDynLibDir2 ::
-    GHC.Exception.SomeException
-    -> GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 2, Strictness: <S,1*U><S,U>,
-     Unfolding: (\ (e1 :: GHC.Exception.SomeException)[OneShot]
-                   (eta :: GHC.Prim.State# GHC.Prim.RealWorld)[OneShot] ->
-                 case e1 of wild { GHC.Exception.SomeException e2 $dException1 e3 ->
-                 case Data.Typeable.Internal.typeRepFingerprint
-                        @ *
-                        @ e2
-                        (GHC.Exception.$p1Exception @ e2 $dException1)
-                          `cast`
-                        (Data.Typeable.Internal.N:Typeable[0] <*>_N <e2>_N) of wild1 { GHC.Fingerprint.Type.Fingerprint dt dt1 ->
-                 case GHC.IO.Exception.$fExceptionIOException4 of wild2 { GHC.Fingerprint.Type.Fingerprint dt2 dt3 ->
-                 case GHC.Prim.eqWord# dt dt2 of lwild {
-                   DEFAULT
-                   -> GHC.Prim.raiseIO#
-                        @ GHC.Exception.SomeException
-                        @ GHC.Base.String
-                        wild
-                        eta
-                   1#
-                   -> case GHC.Prim.eqWord# dt1 dt3 of lwild1 {
-                        DEFAULT
-                        -> GHC.Prim.raiseIO#
-                             @ GHC.Exception.SomeException
-                             @ GHC.Base.String
-                             wild
-                             eta
-                        1# -> (# eta, Paths_do.getDynLibDir3 #) } } } } }) -}
-f4871c9418c1f06ca542f8c7f834b7fe
-  getDynLibDir3 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString#
-                   Paths_do.getDynLibDir4) -}
-77b0feb1a9fee09b2dfb24e6ce8a9bf7
-  getDynLibDir4 :: GHC.Prim.Addr#
-  {- HasNoCafRefs,
-     Unfolding: ("/Users/joshuagrosso/Repositories/axel/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3"#) -}
-d426972ee74ec409148d97c1dc46a5cb
-  getDynLibDir5 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (s :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 case (GHC.Magic.noinline
-                         @ (GHC.Types.IO GHC.IO.Encoding.Types.TextEncoding)
-                         GHC.IO.Encoding.getForeignEncoding)
-                        `cast`
-                      (GHC.Types.N:IO[0] <GHC.IO.Encoding.Types.TextEncoding>_R)
-                        s of ds1 { (#,#) ipv ipv1 ->
-                 case GHC.Foreign.charIsRepresentable3
-                        @ (GHC.Base.Maybe GHC.Base.String)
-                        ipv1
-                        Paths_do.getDynLibDir6
-                        System.Environment.getEnv3
-                          `cast`
-                        (<Foreign.C.String.CString>_R
-                         ->_R Sym (GHC.Types.N:IO[0] <GHC.Base.Maybe GHC.Base.String>_R))
-                        ipv of ds2 { (#,#) ipv2 ipv3 ->
-                 case ipv3 of wild {
-                   GHC.Base.Nothing
-                   -> System.Environment.getEnv2 ipv2 Paths_do.getDynLibDir6
-                   GHC.Base.Just x -> (# ipv2, x #) } } }) -}
-294f3d69668249e880f112823d1f9798
-  getDynLibDir6 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString#
-                   Paths_do.getDynLibDir7) -}
-94c1fc524530016c34483813b4a0a88e
-  getDynLibDir7 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("do_dynlibdir"#) -}
-56e227b0703d6e964b70fe21a48f18fe
-  getLibDir :: GHC.Types.IO GHC.IO.FilePath
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: InlineRule (0, True, True)
-                Paths_do.getLibDir1
-                  `cast`
-                (Sym (GHC.Types.N:IO[0] <GHC.Base.String>_R)) -}
-3688560ff9da020ffcbc134b89b63de9
-  getLibDir1 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (eta :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 GHC.Prim.catch#
-                   @ GHC.Base.String
-                   @ GHC.Exception.SomeException
-                   Paths_do.getLibDir5
-                   Paths_do.getLibDir2
-                   eta) -}
-83ca20ff87f1383a6f260bfbe4c4a274
-  getLibDir2 ::
-    GHC.Exception.SomeException
-    -> GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 2, Strictness: <S,1*U><S,U>,
-     Unfolding: (\ (e1 :: GHC.Exception.SomeException)[OneShot]
-                   (eta :: GHC.Prim.State# GHC.Prim.RealWorld)[OneShot] ->
-                 case e1 of wild { GHC.Exception.SomeException e2 $dException1 e3 ->
-                 case Data.Typeable.Internal.typeRepFingerprint
-                        @ *
-                        @ e2
-                        (GHC.Exception.$p1Exception @ e2 $dException1)
-                          `cast`
-                        (Data.Typeable.Internal.N:Typeable[0] <*>_N <e2>_N) of wild1 { GHC.Fingerprint.Type.Fingerprint dt dt1 ->
-                 case GHC.IO.Exception.$fExceptionIOException4 of wild2 { GHC.Fingerprint.Type.Fingerprint dt2 dt3 ->
-                 case GHC.Prim.eqWord# dt dt2 of lwild {
-                   DEFAULT
-                   -> GHC.Prim.raiseIO#
-                        @ GHC.Exception.SomeException
-                        @ GHC.Base.String
-                        wild
-                        eta
-                   1#
-                   -> case GHC.Prim.eqWord# dt1 dt3 of lwild1 {
-                        DEFAULT
-                        -> GHC.Prim.raiseIO#
-                             @ GHC.Exception.SomeException
-                             @ GHC.Base.String
-                             wild
-                             eta
-                        1# -> (# eta, Paths_do.getLibDir3 #) } } } } }) -}
-71e6c68efdec7d123b6bd0f6f9dd5aaa
-  getLibDir3 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString# Paths_do.getLibDir4) -}
-1a9574ee18f25bdb7ddab58e0b5e41bd
-  getLibDir4 :: GHC.Prim.Addr#
-  {- HasNoCafRefs,
-     Unfolding: ("/Users/joshuagrosso/Repositories/axel/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm-do-exe"#) -}
-7c58210aea5748cb3233e07451aefe3a
-  getLibDir5 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (s :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 case (GHC.Magic.noinline
-                         @ (GHC.Types.IO GHC.IO.Encoding.Types.TextEncoding)
-                         GHC.IO.Encoding.getForeignEncoding)
-                        `cast`
-                      (GHC.Types.N:IO[0] <GHC.IO.Encoding.Types.TextEncoding>_R)
-                        s of ds1 { (#,#) ipv ipv1 ->
-                 case GHC.Foreign.charIsRepresentable3
-                        @ (GHC.Base.Maybe GHC.Base.String)
-                        ipv1
-                        Paths_do.getLibDir6
-                        System.Environment.getEnv3
-                          `cast`
-                        (<Foreign.C.String.CString>_R
-                         ->_R Sym (GHC.Types.N:IO[0] <GHC.Base.Maybe GHC.Base.String>_R))
-                        ipv of ds2 { (#,#) ipv2 ipv3 ->
-                 case ipv3 of wild {
-                   GHC.Base.Nothing
-                   -> System.Environment.getEnv2 ipv2 Paths_do.getLibDir6
-                   GHC.Base.Just x -> (# ipv2, x #) } } }) -}
-045b46c0827ed84fc853e269b4cb053e
-  getLibDir6 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString# Paths_do.getLibDir7) -}
-4e6a7aedef0fd2cc322b2d31083cf668
-  getLibDir7 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("do_libdir"#) -}
-8f622bc51e00287021f094e2a12a29b9
-  getLibexecDir :: GHC.Types.IO GHC.IO.FilePath
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: InlineRule (0, True, True)
-                Paths_do.getLibexecDir1
-                  `cast`
-                (Sym (GHC.Types.N:IO[0] <GHC.Base.String>_R)) -}
-e56f64522fde77118c0854da6879fa21
-  getLibexecDir1 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (eta :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 GHC.Prim.catch#
-                   @ GHC.Base.String
-                   @ GHC.Exception.SomeException
-                   Paths_do.getLibexecDir5
-                   Paths_do.getLibexecDir2
-                   eta) -}
-6c1702a74ae941b02bca0e287fa49245
-  getLibexecDir2 ::
-    GHC.Exception.SomeException
-    -> GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 2, Strictness: <S,1*U><S,U>,
-     Unfolding: (\ (e1 :: GHC.Exception.SomeException)[OneShot]
-                   (eta :: GHC.Prim.State# GHC.Prim.RealWorld)[OneShot] ->
-                 case e1 of wild { GHC.Exception.SomeException e2 $dException1 e3 ->
-                 case Data.Typeable.Internal.typeRepFingerprint
-                        @ *
-                        @ e2
-                        (GHC.Exception.$p1Exception @ e2 $dException1)
-                          `cast`
-                        (Data.Typeable.Internal.N:Typeable[0] <*>_N <e2>_N) of wild1 { GHC.Fingerprint.Type.Fingerprint dt dt1 ->
-                 case GHC.IO.Exception.$fExceptionIOException4 of wild2 { GHC.Fingerprint.Type.Fingerprint dt2 dt3 ->
-                 case GHC.Prim.eqWord# dt dt2 of lwild {
-                   DEFAULT
-                   -> GHC.Prim.raiseIO#
-                        @ GHC.Exception.SomeException
-                        @ GHC.Base.String
-                        wild
-                        eta
-                   1#
-                   -> case GHC.Prim.eqWord# dt1 dt3 of lwild1 {
-                        DEFAULT
-                        -> GHC.Prim.raiseIO#
-                             @ GHC.Exception.SomeException
-                             @ GHC.Base.String
-                             wild
-                             eta
-                        1# -> (# eta, Paths_do.getLibexecDir3 #) } } } } }) -}
-8496a1c7094088d4c920b5720e77e1bd
-  getLibexecDir3 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString#
-                   Paths_do.getLibexecDir4) -}
-9c02d7b0ccc699bace6e3fa649720d7b
-  getLibexecDir4 :: GHC.Prim.Addr#
-  {- HasNoCafRefs,
-     Unfolding: ("/Users/joshuagrosso/Repositories/axel/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/libexec/x86_64-osx-ghc-8.4.3/do-0.1.0.0"#) -}
-25a0ed550f2aae2e88c89b5973f437de
-  getLibexecDir5 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (s :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 case (GHC.Magic.noinline
-                         @ (GHC.Types.IO GHC.IO.Encoding.Types.TextEncoding)
-                         GHC.IO.Encoding.getForeignEncoding)
-                        `cast`
-                      (GHC.Types.N:IO[0] <GHC.IO.Encoding.Types.TextEncoding>_R)
-                        s of ds1 { (#,#) ipv ipv1 ->
-                 case GHC.Foreign.charIsRepresentable3
-                        @ (GHC.Base.Maybe GHC.Base.String)
-                        ipv1
-                        Paths_do.getLibexecDir6
-                        System.Environment.getEnv3
-                          `cast`
-                        (<Foreign.C.String.CString>_R
-                         ->_R Sym (GHC.Types.N:IO[0] <GHC.Base.Maybe GHC.Base.String>_R))
-                        ipv of ds2 { (#,#) ipv2 ipv3 ->
-                 case ipv3 of wild {
-                   GHC.Base.Nothing
-                   -> System.Environment.getEnv2 ipv2 Paths_do.getLibexecDir6
-                   GHC.Base.Just x -> (# ipv2, x #) } } }) -}
-4d7217315a7633d318d360409d63ecb3
-  getLibexecDir6 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString#
-                   Paths_do.getLibexecDir7) -}
-65433b38d26e9f45271c100803df8078
-  getLibexecDir7 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("do_libexecdir"#) -}
-0884130020d0960d3c7cb598dda6e7e8
-  getSysconfDir :: GHC.Types.IO GHC.IO.FilePath
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: InlineRule (0, True, True)
-                Paths_do.getSysconfDir1
-                  `cast`
-                (Sym (GHC.Types.N:IO[0] <GHC.Base.String>_R)) -}
-3e6a59bb3d044bf3b79d09d11e9f8ff9
-  getSysconfDir1 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (eta :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 GHC.Prim.catch#
-                   @ GHC.Base.String
-                   @ GHC.Exception.SomeException
-                   Paths_do.getSysconfDir5
-                   Paths_do.getSysconfDir2
-                   eta) -}
-887ee078c30c7c959b6d9aa229a5a8d6
-  getSysconfDir2 ::
-    GHC.Exception.SomeException
-    -> GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 2, Strictness: <S,1*U><S,U>,
-     Unfolding: (\ (e1 :: GHC.Exception.SomeException)[OneShot]
-                   (eta :: GHC.Prim.State# GHC.Prim.RealWorld)[OneShot] ->
-                 case e1 of wild { GHC.Exception.SomeException e2 $dException1 e3 ->
-                 case Data.Typeable.Internal.typeRepFingerprint
-                        @ *
-                        @ e2
-                        (GHC.Exception.$p1Exception @ e2 $dException1)
-                          `cast`
-                        (Data.Typeable.Internal.N:Typeable[0] <*>_N <e2>_N) of wild1 { GHC.Fingerprint.Type.Fingerprint dt dt1 ->
-                 case GHC.IO.Exception.$fExceptionIOException4 of wild2 { GHC.Fingerprint.Type.Fingerprint dt2 dt3 ->
-                 case GHC.Prim.eqWord# dt dt2 of lwild {
-                   DEFAULT
-                   -> GHC.Prim.raiseIO#
-                        @ GHC.Exception.SomeException
-                        @ GHC.Base.String
-                        wild
-                        eta
-                   1#
-                   -> case GHC.Prim.eqWord# dt1 dt3 of lwild1 {
-                        DEFAULT
-                        -> GHC.Prim.raiseIO#
-                             @ GHC.Exception.SomeException
-                             @ GHC.Base.String
-                             wild
-                             eta
-                        1# -> (# eta, Paths_do.getSysconfDir3 #) } } } } }) -}
-a306cd5c8b7a5cbe26c38746173970d9
-  getSysconfDir3 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString#
-                   Paths_do.getSysconfDir4) -}
-48fb04364039ae6a84a62f16fc3f39b1
-  getSysconfDir4 :: GHC.Prim.Addr#
-  {- HasNoCafRefs,
-     Unfolding: ("/Users/joshuagrosso/Repositories/axel/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/etc"#) -}
-541b95ba12094aa71f3450c5bdccb48b
-  getSysconfDir5 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, GHC.Base.String #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (s :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 case (GHC.Magic.noinline
-                         @ (GHC.Types.IO GHC.IO.Encoding.Types.TextEncoding)
-                         GHC.IO.Encoding.getForeignEncoding)
-                        `cast`
-                      (GHC.Types.N:IO[0] <GHC.IO.Encoding.Types.TextEncoding>_R)
-                        s of ds1 { (#,#) ipv ipv1 ->
-                 case GHC.Foreign.charIsRepresentable3
-                        @ (GHC.Base.Maybe GHC.Base.String)
-                        ipv1
-                        Paths_do.getSysconfDir6
-                        System.Environment.getEnv3
-                          `cast`
-                        (<Foreign.C.String.CString>_R
-                         ->_R Sym (GHC.Types.N:IO[0] <GHC.Base.Maybe GHC.Base.String>_R))
-                        ipv of ds2 { (#,#) ipv2 ipv3 ->
-                 case ipv3 of wild {
-                   GHC.Base.Nothing
-                   -> System.Environment.getEnv2 ipv2 Paths_do.getSysconfDir6
-                   GHC.Base.Just x -> (# ipv2, x #) } } }) -}
-7479f9750e72c44bc260c0894c79399e
-  getSysconfDir6 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString#
-                   Paths_do.getSysconfDir7) -}
-9c4ef60a8cfe5de870f93bdd7986c340
-  getSysconfDir7 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("do_sysconfdir"#) -}
-ac8fcbd81bf23f86213e718e00f7040a
-  version :: Data.Version.Version
-  {- HasNoCafRefs, Strictness: m,
-     Unfolding: (Data.Version.Version
-                   Paths_do.version1
-                   (GHC.Types.[] @ GHC.Base.String)) -}
-bb7fe66f98880af9869152b2b9803d60
-  version1 :: [GHC.Types.Int]
-  {- HasNoCafRefs, Strictness: m2,
-     Unfolding: (GHC.Types.:
-                   @ GHC.Types.Int
-                   Paths_do.version5
-                   Paths_do.version2) -}
-be3cbaf1e28489e40c834f2ff7139820
-  version2 :: [GHC.Types.Int]
-  {- HasNoCafRefs, Strictness: m2,
-     Unfolding: (GHC.Types.:
-                   @ GHC.Types.Int
-                   Paths_do.version6
-                   Paths_do.version3) -}
-7d8bf9f26da2ccadcae8ea4e912b3a83
-  version3 :: [GHC.Types.Int]
-  {- HasNoCafRefs, Strictness: m2,
-     Unfolding: (GHC.Types.:
-                   @ GHC.Types.Int
-                   Paths_do.version5
-                   Paths_do.version4) -}
-bf07632b985976ed33490b63d264125a
-  version4 :: [GHC.Types.Int]
-  {- HasNoCafRefs, Strictness: m2,
-     Unfolding: (GHC.Types.:
-                   @ GHC.Types.Int
-                   Paths_do.version5
-                   (GHC.Types.[] @ GHC.Types.Int)) -}
-423a1d5d87bc85921d0a68dc0927c578
-  version5 :: GHC.Types.Int
-  {- HasNoCafRefs, Strictness: m, Unfolding: (GHC.Types.I# 0#) -}
-c66b954b790419114b1834b054248db7
-  version6 :: GHC.Types.Int
-  {- HasNoCafRefs, Strictness: m, Unfolding: (GHC.Types.I# 1#) -}
-vectorised variables:
-vectorised tycons:
-vectorised reused tycons:
-parallel variables:
-parallel tycons:
-trusted: safe
-require own pkg trusted: False
-
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/Main.hi b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/Main.hi
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/Main.hi and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/Main.o b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/Main.o
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/Main.o and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/Paths_do.hi b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/Paths_do.hi
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/Paths_do.hi and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/Paths_do.o b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/Paths_do.o
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/Paths_do.o and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/app/Main.dump-hi b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/app/Main.dump-hi
deleted file mode 100644
--- a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/do-exe/do-exe-tmp/app/Main.dump-hi
+++ /dev/null
@@ -1,90 +0,0 @@
-
-==================== FINAL INTERFACE ====================
-2018-07-21 20:15:37.346251 UTC
-
-interface main:Main 8043
-  interface hash: f4aad249a572aaccc0d5b792c5365a09
-  ABI hash: b48a2cd7ccebb4d45a72b25b7907fc5d
-  export-list hash: c1f98a35e15b213b50e77cd700ab146f
-  orphan hash: 693e9af84d3dfcc71e640e005bdc5e2e
-  flag hash: 385167d368051acb2ee8457dfc7d7d4d
-  opt_hash: 14e536840aca4e889cad654e6f9b79c1
-  hpc_hash: 93b885adfe0da089cdf634904fd59f71
-  sig of: Nothing
-  used TH splices: False
-  where
-exports:
-  Main.main
-module dependencies:
-package dependencies: base-4.11.1.0* ghc-prim-0.5.2.0
-                      integer-gmp-1.0.2.0
-orphans: base-4.11.1.0:GHC.Float base-4.11.1.0:GHC.Base
-family instance modules: base-4.11.1.0:Control.Applicative
-                         base-4.11.1.0:Data.Functor.Const
-                         base-4.11.1.0:Data.Functor.Identity base-4.11.1.0:Data.Monoid
-                         base-4.11.1.0:Data.Semigroup.Internal base-4.11.1.0:GHC.Generics
-                         base-4.11.1.0:GHC.IO.Exception
-import  -/  base-4.11.1.0:GHC.Base 604111500e81281298777e721c75643b
-import  -/  base-4.11.1.0:Prelude 0750c25585e2b797cd78291d423d39dd
-import  -/  base-4.11.1.0:System.IO ce09fff7d191d14067bddc2efd9b53a4
-import  -/  ghc-prim-0.5.2.0:GHC.Types d9b3023de7feae4a5308d643da5543f7
-be86c9d078d3acbf19ba91fe74a24273
-  $trModule :: GHC.Types.Module
-  {- HasNoCafRefs, Strictness: m,
-     Unfolding: (GHC.Types.Module Main.$trModule3 Main.$trModule1) -}
-b09d86f2c49dd5176b544d8d13ddb6c5
-  $trModule1 :: GHC.Types.TrName
-  {- HasNoCafRefs, Strictness: m1,
-     Unfolding: (GHC.Types.TrNameS Main.$trModule2) -}
-e5875966b74dad2d29772660b8a75e33
-  $trModule2 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("Main"#) -}
-23b03bd7d075a00f5ad1ee10e6add7b8
-  $trModule3 :: GHC.Types.TrName
-  {- HasNoCafRefs, Strictness: m1,
-     Unfolding: (GHC.Types.TrNameS Main.$trModule4) -}
-d026be77cb9ced20e35a61514e0458aa
-  $trModule4 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("main"#) -}
-5ef53ceef132a1ea0eb4ea5bc4d6af6d
-  main :: GHC.Types.IO ()
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: InlineRule (0, True, True)
-                Main.main1 `cast` (Sym (GHC.Types.N:IO[0] <()>_R)) -}
-b146918497a1499ea4e5bfec397b02b1
-  main1 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, () #)
-  {- Arity: 1, Strictness: <S,U>,
-     Unfolding: (\ (s :: GHC.Prim.State# GHC.Prim.RealWorld) ->
-                 case GHC.IO.Handle.Internals.wantReadableHandle_1
-                        @ GHC.Base.String
-                        GHC.IO.Handle.Text.hGetLine4
-                        GHC.IO.Handle.FD.stdin
-                        GHC.IO.Handle.Text.hGetLine2
-                          `cast`
-                        (<GHC.IO.Handle.Types.Handle__>_R
-                         ->_R Sym (GHC.Types.N:IO[0] <GHC.Base.String>_R))
-                        s of ds1 { (#,#) ipv ipv1 ->
-                 case GHC.IO.Handle.Text.hPutStr2
-                        GHC.IO.Handle.FD.stdout
-                        ipv1
-                        GHC.Types.True
-                        ipv of ds2 { (#,#) ipv2 ipv3 ->
-                 (# ipv2, GHC.Tuple.() #) } }) -}
-42aeb51cb86bb6d725ead93931e7aeea
-  main2 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, () #)
-  {- Arity: 1,
-     Unfolding: (GHC.TopHandler.runMainIO1
-                   @ ()
-                   Main.main1 `cast` (Sym (GHC.Types.N:IO[0] <()>_R))) -}
-vectorised variables:
-vectorised tycons:
-vectorised reused tycons:
-parallel variables:
-parallel tycons:
-trusted: safe
-require own pkg trusted: False
-
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/libHSdo-0.1.0.0-84i3CClUbe35xQ9SiCfZTm-ghc8.4.3.dylib b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/libHSdo-0.1.0.0-84i3CClUbe35xQ9SiCfZTm-ghc8.4.3.dylib
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/libHSdo-0.1.0.0-84i3CClUbe35xQ9SiCfZTm-ghc8.4.3.dylib and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/libHSdo-0.1.0.0-84i3CClUbe35xQ9SiCfZTm.a b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/libHSdo-0.1.0.0-84i3CClUbe35xQ9SiCfZTm.a
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/libHSdo-0.1.0.0-84i3CClUbe35xQ9SiCfZTm.a and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/src/Lib.dump-hi b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/src/Lib.dump-hi
deleted file mode 100644
--- a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/build/src/Lib.dump-hi
+++ /dev/null
@@ -1,76 +0,0 @@
-
-==================== FINAL INTERFACE ====================
-2018-07-15 17:45:26.929525 UTC
-
-interface do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm:Lib 8043
-  interface hash: e86e00edd7e210d4d1984cef12c64269
-  ABI hash: 19def5947ddea6309ef88f5ebcd54885
-  export-list hash: 0aad55ddd31944cc3fac8963098c0752
-  orphan hash: 693e9af84d3dfcc71e640e005bdc5e2e
-  flag hash: 8f52f5e5828eb5661f405d8d9ca450ec
-  opt_hash: 14e536840aca4e889cad654e6f9b79c1
-  hpc_hash: 93b885adfe0da089cdf634904fd59f71
-  sig of: Nothing
-  used TH splices: False
-  where
-exports:
-  Lib.someFunc
-module dependencies:
-package dependencies: base-4.11.1.0* ghc-prim-0.5.2.0
-                      integer-gmp-1.0.2.0
-orphans: base-4.11.1.0:GHC.Float base-4.11.1.0:GHC.Base
-family instance modules: base-4.11.1.0:Control.Applicative
-                         base-4.11.1.0:Data.Functor.Const
-                         base-4.11.1.0:Data.Functor.Identity base-4.11.1.0:Data.Monoid
-                         base-4.11.1.0:Data.Semigroup.Internal base-4.11.1.0:GHC.Generics
-                         base-4.11.1.0:GHC.IO.Exception
-import  -/  base-4.11.1.0:Prelude 0750c25585e2b797cd78291d423d39dd
-import  -/  base-4.11.1.0:System.IO ce09fff7d191d14067bddc2efd9b53a4
-import  -/  ghc-prim-0.5.2.0:GHC.Types d9b3023de7feae4a5308d643da5543f7
-bafc32b455ed820fcb5800bac54b262e
-  $trModule :: GHC.Types.Module
-  {- HasNoCafRefs, Strictness: m,
-     Unfolding: (GHC.Types.Module Lib.$trModule3 Lib.$trModule1) -}
-c5a5e21a1a397515fb8814633f9f2c97
-  $trModule1 :: GHC.Types.TrName
-  {- HasNoCafRefs, Strictness: m1,
-     Unfolding: (GHC.Types.TrNameS Lib.$trModule2) -}
-cc007fb6c82dc90be378d452c40ed3b5
-  $trModule2 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("Lib"#) -}
-a8965623f61e27e51532a36628725a64
-  $trModule3 :: GHC.Types.TrName
-  {- HasNoCafRefs, Strictness: m1,
-     Unfolding: (GHC.Types.TrNameS Lib.$trModule4) -}
-e3004c67dbfc9bb27067f19c2b19c22e
-  $trModule4 :: GHC.Prim.Addr#
-  {- HasNoCafRefs,
-     Unfolding: ("do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm"#) -}
-44149981aa85065e44d6400119436a01
-  someFunc :: GHC.Types.IO ()
-  {- Arity: 1,
-     Unfolding: InlineRule (0, True, True)
-                Lib.someFunc1 `cast` (Sym (GHC.Types.N:IO[0] <()>_R)) -}
-eb73bf67f1f70b4261fd40dccd1172e7
-  someFunc1 ::
-    GHC.Prim.State# GHC.Prim.RealWorld
-    -> (# GHC.Prim.State# GHC.Prim.RealWorld, () #)
-  {- Arity: 1,
-     Unfolding: (GHC.IO.Handle.Text.hPutStr2
-                   GHC.IO.Handle.FD.stdout
-                   Lib.someFunc2
-                   GHC.Types.True) -}
-c8d5c40280fa2acb25fd003109b6fb03
-  someFunc2 :: [GHC.Types.Char]
-  {- Unfolding: (GHC.CString.unpackCString# Lib.someFunc3) -}
-3d385387148d1e9a032ff6ee00ad76c5
-  someFunc3 :: GHC.Prim.Addr#
-  {- HasNoCafRefs, Unfolding: ("someFunc"#) -}
-vectorised variables:
-vectorised tycons:
-vectorised reused tycons:
-parallel variables:
-parallel tycons:
-trusted: safe
-require own pkg trusted: False
-
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/package.conf.inplace/package.cache b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/package.conf.inplace/package.cache
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/package.conf.inplace/package.cache and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/package.conf.inplace/package.cache.lock b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/package.conf.inplace/package.cache.lock
deleted file mode 100644
--- a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/package.conf.inplace/package.cache.lock
+++ /dev/null
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/setup-config b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/setup-config
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/setup-config and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/stack-build-caches/exe-do-exe b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/stack-build-caches/exe-do-exe
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/stack-build-caches/exe-do-exe and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/stack-build-caches/lib b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/stack-build-caches/lib
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/stack-build-caches/lib and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/stack-build-caches/test-do-test b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/stack-build-caches/test-do-test
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/stack-build-caches/test-do-test and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/stack-cabal-mod b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/stack-cabal-mod
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/stack-cabal-mod and /dev/null differ
diff --git a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/stack-config-cache b/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/stack-config-cache
deleted file mode 100644
Binary files a/examples/do/.stack-work/dist/x86_64-osx/Cabal-2.2.0.1/stack-config-cache and /dev/null differ
diff --git a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/bin/do-exe b/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/bin/do-exe
deleted file mode 100644
Binary files a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/bin/do-exe and /dev/null differ
diff --git a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/doc/do-0.1.0.0/LICENSE b/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/doc/do-0.1.0.0/LICENSE
deleted file mode 100644
--- a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/doc/do-0.1.0.0/LICENSE
+++ /dev/null
@@ -1,30 +0,0 @@
-Copyright Author name here (c) 2018
-
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-
-    * Redistributions in binary form must reproduce the above
-      copyright notice, this list of conditions and the following
-      disclaimer in the documentation and/or other materials provided
-      with the distribution.
-
-    * Neither the name of Author name here nor the names of other
-      contributors may be used to endorse or promote products derived
-      from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/flag-cache/do-0.1.0.0 b/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/flag-cache/do-0.1.0.0
deleted file mode 100644
Binary files a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/flag-cache/do-0.1.0.0 and /dev/null differ
diff --git a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/flag-cache/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm b/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/flag-cache/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm
deleted file mode 100644
Binary files a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/flag-cache/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm and /dev/null differ
diff --git a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm/Lib.dyn_hi b/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm/Lib.dyn_hi
deleted file mode 100644
Binary files a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm/Lib.dyn_hi and /dev/null differ
diff --git a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm/Lib.hi b/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm/Lib.hi
deleted file mode 100644
Binary files a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm/Lib.hi and /dev/null differ
diff --git a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm/Paths_do.dyn_hi b/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm/Paths_do.dyn_hi
deleted file mode 100644
Binary files a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm/Paths_do.dyn_hi and /dev/null differ
diff --git a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm/Paths_do.hi b/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm/Paths_do.hi
deleted file mode 100644
Binary files a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm/Paths_do.hi and /dev/null differ
diff --git a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm/libHSdo-0.1.0.0-84i3CClUbe35xQ9SiCfZTm.a b/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm/libHSdo-0.1.0.0-84i3CClUbe35xQ9SiCfZTm.a
deleted file mode 100644
Binary files a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/do-0.1.0.0-84i3CClUbe35xQ9SiCfZTm/libHSdo-0.1.0.0-84i3CClUbe35xQ9SiCfZTm.a and /dev/null differ
diff --git a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/libHSdo-0.1.0.0-84i3CClUbe35xQ9SiCfZTm-ghc8.4.3.dylib b/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/libHSdo-0.1.0.0-84i3CClUbe35xQ9SiCfZTm-ghc8.4.3.dylib
deleted file mode 100644
Binary files a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/lib/x86_64-osx-ghc-8.4.3/libHSdo-0.1.0.0-84i3CClUbe35xQ9SiCfZTm-ghc8.4.3.dylib and /dev/null differ
diff --git a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/pkgdb/package.cache b/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/pkgdb/package.cache
deleted file mode 100644
Binary files a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/pkgdb/package.cache and /dev/null differ
diff --git a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/pkgdb/package.cache.lock b/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/pkgdb/package.cache.lock
deleted file mode 100644
--- a/examples/do/.stack-work/install/x86_64-osx/lts-12.0/8.4.3/pkgdb/package.cache.lock
+++ /dev/null
diff --git a/examples/do/.stack-work/intero/interoMkMX0r-TEMP.hs b/examples/do/.stack-work/intero/interoMkMX0r-TEMP.hs
deleted file mode 100644
--- a/examples/do/.stack-work/intero/interoMkMX0r-TEMP.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-do' :: ((->) ([] AST.Expression) AST.Expression)
-do'  = (\aXEL_AUTOGENERATED_IDENTIFIER_0 -> (case aXEL_AUTOGENERATED_IDENTIFIER_0 of {((:) var ((:) (AST.Symbol "<-") ((:) val rest))) -> (AST.SExpression (concat [[(AST.Symbol ">>=")],[val],[(AST.SExpression (concat [[(AST.Symbol "fn")],[(AST.SExpression (concat [[var]]))],[(do' rest)]]))]]));((:) val rest) -> (case rest of {[] -> val;_ -> (AST.SExpression (concat [[(AST.Symbol ">>")],[val],[(do' rest)]]))})}))
-main :: (IO ())
-main  = ((>>=) getLine (\line -> ((>>) (putStrLn line) (pure ()))))
diff --git a/examples/do/.stack-work/intero/interokbXBrc-TEMP.hs b/examples/do/.stack-work/intero/interokbXBrc-TEMP.hs
deleted file mode 100644
--- a/examples/do/.stack-work/intero/interokbXBrc-TEMP.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Main where
-do' :: ((->) ([] AST.Expression) AST.Expression)
-do'  = (fnCase (((:) var ((:) (AST.Symbol "<-") ((:) val rest))) (AST.SExpression (concat [[(AST.Symbol ">>=")],[val],[(AST.SExpression (concat [[(AST.Symbol "fn")],[(AST.SExpression (concat [[var]]))],[(do' rest)]]))]]))) (((:) val rest) (case rest of {[] -> val;_ -> (AST.SExpression (concat [[(AST.Symbol ">>")],[val],[(do' rest)]]))})))
-main :: (IO ())
-main  = (do line (<-) getLine (putStrLn line) (pure ()))
diff --git a/examples/do/Setup.axel b/examples/do/Setup.axel
deleted file mode 100644
--- a/examples/do/Setup.axel
+++ /dev/null
@@ -1,4 +0,0 @@
-(import Distribution.Simple (defaultMain))
-
-(= main (IO Unit)
-  (() defaultMain))
diff --git a/examples/do/Setup.hs b/examples/do/Setup.hs
deleted file mode 100644
--- a/examples/do/Setup.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-import Distribution.Simple(defaultMain)
-main :: (IO ())
-main  = defaultMain
diff --git a/examples/do/app/Main.axel b/examples/do/app/Main.axel
deleted file mode 100644
--- a/examples/do/app/Main.axel
+++ /dev/null
@@ -1,44 +0,0 @@
-(module Main)
-
-(importq Axel.Parse.AST AST all)
-
-(defmacro quasiquote
-  (([(AST.SExpression xs)])
-   (let ((quasiquoteElem (fn (x) (case x
-                                   ((AST.SExpression ['unquote x])
-                                    (AST.SExpression ['list x]))
-                                   ((AST.SExpression ['unquoteSplicing x])
-                                    x)
-                                   (atom
-                                    (AST.SExpression
-                                     ['list
-                                      (AST.SExpression ['quasiquote atom])]))))))
-     (pure [(AST.SExpression ['AST.SExpression (AST.SExpression ['concat (AST.SExpression (: 'list (map quasiquoteElem xs)))])])])))
-  (([atom]) (pure [(AST.SExpression ['quote atom])])))
-
-(defmacro fnCase
-  ((cases) (<$> (fn (varId)
-                  [`(fn (~varId)
-                      (case ~varId ~@cases))])
-                AST.gensym)))
-
-(= do' (-> ([] AST.Expression) AST.Expression)
-   (() (fnCase
-        ((: var (: '<- (: val rest)))
-         `(>>= ~val (fn (~var) ~(do' rest))))
-        ((: val rest)
-         (case rest
-           ([]
-            val)
-           (_
-            `(>> ~val ~(do' rest))))))))
-
-(defmacro do
-  ((input)
-   (pure [(do' input)])))
-
-(= main (IO Unit)
-   (() (do
-         line <- getLine
-         (putStrLn line)
-         (pure unit))))
diff --git a/examples/do/app/Main.hs b/examples/do/app/Main.hs
deleted file mode 100644
--- a/examples/do/app/Main.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-import Axel.Parse.AST as AST
-do' :: ((->) ([] AST.Expression) AST.Expression)
-do'  = (\aXEL_AUTOGENERATED_IDENTIFIER_0 -> (case aXEL_AUTOGENERATED_IDENTIFIER_0 of {((:) var ((:) (AST.Symbol "<-") ((:) val rest))) -> (AST.SExpression (concat [[(AST.Symbol ">>=")],[val],[(AST.SExpression (concat [[(AST.Symbol "fn")],[(AST.SExpression (concat [[var]]))],[(do' rest)]]))]]));((:) val rest) -> (case rest of {[] -> val;_ -> (AST.SExpression (concat [[(AST.Symbol ">>")],[val],[(do' rest)]]))})}))
-main :: (IO ())
-main  = ((>>=) getLine (\line -> ((>>) (putStrLn line) (pure ()))))
diff --git a/examples/do/cabal.project.local b/examples/do/cabal.project.local
deleted file mode 100644
--- a/examples/do/cabal.project.local
+++ /dev/null
@@ -1,23 +0,0 @@
-solver: modular
-doc-index-file: $datadir/doc/$arch-$os-$compiler/index.html
-max-backjumps: 2000
-reorder-goals: False
-count-conflicts: True
-strong-flags: False
-allow-boot-library-installs: False
-remote-build-reporting: none
-report-planning-failure: False
-per-component: True
-one-shot: False
-keep-going: False
-offline: False
-documentation: False
-haddock-keep-temp-files: False
-haddock-hoogle: False
-haddock-html: False
-haddock-executables: False
-haddock-tests: False
-haddock-benchmarks: False
-haddock-foreign-libraries: False
-haddock-internal: False
-haddock-hyperlink-source: False
diff --git a/examples/do/dist-newstyle/cache/compiler b/examples/do/dist-newstyle/cache/compiler
deleted file mode 100644
Binary files a/examples/do/dist-newstyle/cache/compiler and /dev/null differ
diff --git a/examples/do/dist-newstyle/cache/config b/examples/do/dist-newstyle/cache/config
deleted file mode 100644
Binary files a/examples/do/dist-newstyle/cache/config and /dev/null differ
diff --git a/examples/do/dist-newstyle/cache/elaborated-plan b/examples/do/dist-newstyle/cache/elaborated-plan
deleted file mode 100644
Binary files a/examples/do/dist-newstyle/cache/elaborated-plan and /dev/null differ
diff --git a/examples/do/dist-newstyle/cache/improved-plan b/examples/do/dist-newstyle/cache/improved-plan
deleted file mode 100644
Binary files a/examples/do/dist-newstyle/cache/improved-plan and /dev/null differ
diff --git a/examples/do/dist-newstyle/cache/plan.json b/examples/do/dist-newstyle/cache/plan.json
deleted file mode 100644
--- a/examples/do/dist-newstyle/cache/plan.json
+++ /dev/null
@@ -1,1 +0,0 @@
-{"cabal-version":"2.0.0.1","cabal-lib-version":"2.0.1.1","compiler-id":"ghc-8.4.3","os":"osx","arch":"x86_64","install-plan":[{"type":"pre-existing","id":"base-4.11.1.0","pkg-name":"base","pkg-version":"4.11.1.0","depends":["rts","ghc-prim-0.5.2.0","integer-gmp-1.0.2.0"]},{"type":"configured","id":"do-0.1.0.0-inplace-do-exe","pkg-name":"do","pkg-version":"0.1.0.0","flags":{},"style":"local","dist-dir":"/Users/joshuagrosso/Repositories/axel/examples/do/dist-newstyle/build/x86_64-osx/ghc-8.4.3/do-0.1.0.0/c/do-exe","depends":["base-4.11.1.0"],"exe-depends":[],"component-name":"exe:do-exe","bin-file":"/Users/joshuagrosso/Repositories/axel/examples/do/dist-newstyle/build/x86_64-osx/ghc-8.4.3/do-0.1.0.0/c/do-exe/build/do-exe/do-exe"},{"type":"pre-existing","id":"ghc-prim-0.5.2.0","pkg-name":"ghc-prim","pkg-version":"0.5.2.0","depends":["rts"]},{"type":"pre-existing","id":"integer-gmp-1.0.2.0","pkg-name":"integer-gmp","pkg-version":"1.0.2.0","depends":["ghc-prim-0.5.2.0"]},{"type":"pre-existing","id":"rts","pkg-name":"rts","pkg-version":"1.0","depends":[]}]}
diff --git a/examples/do/dist-newstyle/cache/solver-plan b/examples/do/dist-newstyle/cache/solver-plan
deleted file mode 100644
Binary files a/examples/do/dist-newstyle/cache/solver-plan and /dev/null differ
diff --git a/examples/do/dist-newstyle/cache/source-hashes b/examples/do/dist-newstyle/cache/source-hashes
deleted file mode 100644
Binary files a/examples/do/dist-newstyle/cache/source-hashes and /dev/null differ
diff --git a/examples/do/do.cabal b/examples/do/do.cabal
deleted file mode 100644
--- a/examples/do/do.cabal
+++ /dev/null
@@ -1,36 +0,0 @@
--- This file has been generated from package.yaml by hpack version 0.28.2.
---
--- see: https://github.com/sol/hpack
---
--- hash: 6b2dec4e676f630059031c7d0886c3e3660d816e93a55f828cc7d946af54cbb2
-
-name:           do
-version:        0.1.0.0
-description:    Please see the README on GitHub at <https://github.com/githubuser/do#readme>
-homepage:       https://github.com/githubuser/do#readme
-bug-reports:    https://github.com/githubuser/do/issues
-author:         Author name here
-maintainer:     example@example.com
-copyright:      2018 Author name here
-license:        BSD3
-build-type:     Simple
-cabal-version:  >= 1.10
-extra-source-files:
-    ChangeLog.md
-    README.md
-
-source-repository head
-  type: git
-  location: https://github.com/githubuser/do
-
-executable do-exe
-  main-is: Main.hs
-  other-modules:
-      Paths_do
-  hs-source-dirs:
-      app
-  ghc-options: -threaded -rtsopts -with-rtsopts=-N
-  build-depends:
-      axel ==0.0.1
-    , base >=4.7 && <5
-  default-language: Haskell2010
diff --git a/examples/do/package.yaml b/examples/do/package.yaml
deleted file mode 100644
--- a/examples/do/package.yaml
+++ /dev/null
@@ -1,22 +0,0 @@
-copyright: 2018 Author name here
-maintainer: example@example.com
-dependencies:
-- base >= 4.7 && < 5
-name: do
-version: '0.1.0.0'
-extra-source-files:
-- README.md
-- ChangeLog.md
-author: Author name here
-github: githubuser/do
-license: BSD3
-executables:
-  do-exe:
-    source-dirs: app
-    main: Main.hs
-    ghc-options:
-    - -threaded
-    - -rtsopts
-    - -with-rtsopts=-N
-    dependencies: []
-description: Please see the README on GitHub at <https://github.com/githubuser/do#readme>
diff --git a/examples/do/stack.yaml b/examples/do/stack.yaml
deleted file mode 100644
--- a/examples/do/stack.yaml
+++ /dev/null
@@ -1,65 +0,0 @@
-# This file was automatically generated by 'stack init'
-#
-# Some commonly used options have been documented as comments in this file.
-# For advanced use and comprehensive documentation of the format, please see:
-# https://docs.haskellstack.org/en/stable/yaml_configuration/
-
-# Resolver to choose a 'specific' stackage snapshot or a compiler version.
-# A snapshot resolver dictates the compiler version and the set of packages
-# to be used for project dependencies. For example:
-#
-# resolver: lts-3.5
-# resolver: nightly-2015-09-21
-# resolver: ghc-7.10.2
-# resolver: ghcjs-0.1.0_ghc-7.10.2
-#
-# The location of a snapshot can be provided as a file or url. Stack assumes
-# a snapshot provided as a file might change, whereas a url resource does not.
-#
-# resolver: ./custom-snapshot.yaml
-# resolver: https://example.com/snapshots/2018-01-01.yaml
-resolver: lts-12.0
-
-# User packages to be built.
-# Various formats can be used as shown in the example below.
-#
-# packages:
-# - some-directory
-# - https://example.com/foo/bar/baz-0.0.2.tar.gz
-# - location:
-#    git: https://github.com/commercialhaskell/stack.git
-#    commit: e7b331f14bcffb8367cd58fbfc8b40ec7642100a
-# - location: https://github.com/commercialhaskell/stack/commit/e7b331f14bcffb8367cd58fbfc8b40ec7642100a
-#  subdirs:
-#  - auto-update
-#  - wai
-packages:
-- .
-# Dependency packages to be pulled from upstream that are not in the resolver
-# using the same syntax as the packages field.
-# (e.g., acme-missiles-0.3)
-# extra-deps: []
-
-# Override default flag values for local packages and extra-deps
-# flags: {}
-
-# Extra package databases containing global packages
-# extra-package-dbs: []
-
-# Control whether we use the GHC we find on the path
-# system-ghc: true
-#
-# Require a specific version of stack, using version ranges
-# require-stack-version: -any # Default
-# require-stack-version: ">=1.7"
-#
-# Override the architecture used by stack, especially useful on Windows
-# arch: i386
-# arch: x86_64
-#
-# Extra directories used by stack for building
-# extra-include-dirs: [/path/to/dir]
-# extra-lib-dirs: [/path/to/dir]
-#
-# Allow a newer minor version of GHC than the snapshot specifies
-# compiler-check: newer-minor
