Skip to content

ish7o/parsemd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

parsemd

Monadic markdown parser written in Haskell, built from scratch without libraries.

Bit of history

Coming from Go and Python, Haskell's type system and purely functional approach was a different mental model. I wrote this to gain Haskell experience and learn how to structure a parser using only Functor, Applicative, and Monad instances.

What works:

  • Headings
  • Paragraphs
  • Blockqotes
  • Horizontal rules
  • Bold
  • Italic
  • Inline code
  • Links
  • Strikethrough
  • Ordered/Unordered lists
  • Code blocks

Usage

Reads stdin

cabal run

TODO

  • Recursive list parsing
  • Escape characters (e.g. \*text\*)
  • HTML output

About

functional programming is fun (it's in the name)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors