exploring-interpreters-1.4.0.0: A generic exploring interpreter for exploratory programming
Safe HaskellSafe-Inferred
LanguageHaskell2010

Language.Explorer.Tools.REPL

Documentation

type MetaTable p m c o = [(String, String -> Explorer p m c o -> m (Explorer p m c o))] Source #

type RParser p c = String -> c -> Maybe p Source #

type Prompt p m c o = Explorer p m c o -> String Source #

type MetaHandler p m c o = String -> Explorer p m c o -> m (Explorer p m c o) Source #

type OutputHandler m o = o -> m () Source #

type Repl p m c o = Prompt p m c o -> RParser p c -> String -> MetaTable p m c o -> MetaHandler p m c o -> OutputHandler m o -> Explorer p m c o -> m () Source #

handleJump :: MonadIO m => String -> Explorer p m c o -> m (Explorer p m c o) Source #

metaTable :: MonadIO m => [(String, String -> Explorer p m c o -> m (Explorer p m c o))] Source #

constructMetaTable :: MonadIO m => String -> [(String, String -> Explorer p m c o -> m (Explorer p m c o))] Source #

repl :: (Eq p, Eq o, Monoid o, MonadIO m, MonadMask m) => Repl p m c o Source #