1
Fork 0
solar-conflux/purescript/abilities/src/Main.purs

33 lines
626 B
Plaintext

module Main where
import Prelude
import Ask (class Ask, handleAsk)
import Ask as Ask
import Effect (Effect)
import Effect.Console (logShow)
import Io (class Io, handleIo)
import Io as Io
import Abilities as Abilities
something :: Ask Int => Io => Int
something = Abilities.do
let a = 3
Io.assert $ a + 1 == 4
Io.debugLog $ show a
-- Let works just as well
b <- Io.readFile "b.txt"
Io.debugLog $ Io.readFile "a.txt" <> "!!"
Io.debugLog b
a + Ask.ask * 2
main :: Effect Unit
main = do
result <- handleAsk 3 $ handleIo something
result' <- handleAsk 5 $ handleIo something
logShow [result, result']