a haskellified version of the classic sed unix tool
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.



Parsed (pronounced par-séd) is a suite of shell scripts to simplify parsing from the Unix shell. It improves the classic sed program by incorporating ideas from Haskell's popular parsec library. In particular, the Unix pipe operator | corresponds exactly to Haskell's Applicative bind *>. The resulting syntax is both intuitive and powerful. The original syntax used by sed can match only regular languages; but our improved syntax can match any context sensitive language.

For example, the following one liner creates a parser for matching balanced parenthesis.

$ parens() { choice "$1" "match '(' | parens \"$1\" | match ')'"; }

For more examples and a detailed tutorial, please see our SIGBOVIK2015 paper.