Parker's Posts

Introducing hson, a JSON processing language

hson is a CLI that, when given JSON data and an hson script, processes the JSON data according to the script. I demonstrate the features of hson and illustrate how it was implemented using Haskell.

hson
Haskell

Pure Functional Programming in Context

What is pure functional programming, and how does it compare to the more mainstream imperative, object-oriented programming paradigm? I present a brief history of the problems FP aims to solve.

Haskell
Functional Programming

A Survey of Practical Haskell

Wondering why Haskell is so notable? I introduce the Haskell programming language and pure functional programming more broadly, providing many examples and avoiding as much jargon as possible.

Haskell
Functional Programming

Testing Parsers Thoroughly with Property-Based Testing

Property-based testing is effective at revealing unconsidered edge cases! I compare unit testing to property-based testing and discuss my experience implementing property-based testing for a parser.

Haskell
QuickCheck
Parsers
Testing
Functional Programming

A Practical Introduction to Parsing in Haskell

Understanding parsing in Haskell does not require monad expertise! I briefly demonstrate the use of parser combinators in hson and provide practical descriptions and analogies for the Parser monad.

Haskell
Parsers
Interpreters
Functional Programming

Parsing Chained Expressions, Functionally

While immutability can help prevent bugs, it can also create challenges. Such challenges arise when parsing chained expressions from left-to-right, as those expressions must be nested in the parse tree from right-to-left.

Haskell
Parsers
Interpreters
Functional Programming