maude-0.6.1: An interface to the Maude rewriting system.

Safe HaskellSafe-Infered




This package provides a simple interface to the Maude executable for doing Maude rewrites from within Haskell.

Note: Maude is considered to have failed if it ever prints to stderr.



High-level interface

rewrite :: [FilePath] -> Text -> IO RewriteResultSource

rewrite files term rewrites term using Maude (with files loaded).

This function may throw a MaudeException.

search :: [FilePath] -> Text -> Text -> IO SearchResultsSource

search files term pattern uses Maude (with files loaded) to search for all reachable states starting from term and matching the given pattern. Note that pattern should also include the search type. For example,

>>> search [] term "=>! N:Nat"

runs the Maude command search term =>! N:Nat.

This function may throw a MaudeException.

Low-level interface

runMaude :: MaudeConf -> MaudeCommand -> IO MaudeResultSource

runMaude conf cmd performs the Maude command cmd using the configuration conf.

This function may throw a MaudeException.

defaultConf :: MaudeConfSource

Default Maude configuration