Documentation
data VariableName Source
type Unifier = [Substitution]Source
type Substitution = (VariableName, Term)Source
class Monad m => MonadTrace m whereSource
MonadTrace IO | |
MonadTrace (Either err) | |
(MonadTrace m, MonadTrans t, Monad (t m)) => MonadTrace (t m) | |
MonadTrace (Trace IO) |
class Monad m => MonadGraphGen m whereSource
createConnections :: Unifier -> [Goal] -> [Branch] -> m ()Source
markSolution :: Unifier -> m ()Source
markCutBranches :: Stack -> m ()Source
Monad m => MonadGraphGen (NoGraphT m) | |
MonadGraphGen m => MonadGraphGen (ReaderT r m) |
runNoGraphT :: NoGraphT m a -> m aSource
resolve :: (Functor m, MonadTrace m, Error e, MonadError e m) => Program -> [Goal] -> m [Unifier]Source
resolve_ :: (Functor m, MonadTrace m, Error e, MonadError e m, MonadGraphGen m) => Program -> [Goal] -> m [Unifier]Source
(+++) :: [Substitution] -> [Substitution] -> UnifierSource
parseQuery :: String -> Either ParseError [Term]Source
whitespace :: ParsecT String () Identity ()Source