alga-0.2.2: Algorithmic automation for various DAWs

Safe HaskellNone




probeAlga :: Text -> Bool Source #

Test if given fragment of ALGA code is finished and self-contained.

parseAlga Source #


:: String

Name of file

-> Text

Text to parse

-> Either String [Statement]

Error message or parsed statements

Entry point for ALGA parsing.

showStatement :: Statement -> Text Source #

Render a statement. This handles definitions and expositions.

showSyntaxTree :: SyntaxTree -> Text Source #

Render syntax tree.

showPrinciple :: Principle -> Text Source #

Show principle. This is useful for printing of simplified principles back to user. We can use the same pretty-printing algorithm as for syntax trees, but this requires us to perform transformation from Principle to SyntaxTree, which is trivial.