Mitchell Hashimoto

  • Archive
  • RSS

“The Essence of Functional Programming” Part 1: The Identity Monad

This is the first of a new series of posts that will take papers that I read and will explain them and attempt to make them more concrete (and less theoretical) by showing real world examples using more industry-standard languages. These papers will be tagged with theory-in-practice. For more information on the “Theory in Practice” series, read the introductory post.

Today’s paper is “The essence of functional programming” by Philip Wadler. This paper is widely known as the paper which popularized monads, and introduces them in a relatively elementary context with a focus on practical programming use.

This is part 1 of a multi-part series. In order to allow the information to soak in and to not consume too much of your time, I’ve decided to split this into multiple parts which I will publish over the coming weeks. These will all be tagged with essence-of-functional-programming.

Part 1 will cover the inspiration for monads as well as introduce the trivial monad.

Prior knowledge required: Basic programming experience with basic experience in functional programming (in any language, whether it be Ruby, Python, C, etc.). The examples will be given in Haskell and Scala.

Read More

    • #functional-programming
    • #haskell
    • #monad
    • #paper
    • #scala
    • #theory-in-practice
    • #essence-of-functional-programming
  • 7 months ago
  • 28
  • Comments
  • Permalink
  • Share
    Tweet

About

Avatar
My name is Mitchell Hashimoto. I'm passionate about open source software, DevOps, and programming languages (with a focus on functional programming).

Pages

  • Open Source

Twitter

loading tweets…

  • RSS
  • Random
  • Archive
  • Mobile

Effector Theme by Carlo Franco.

Powered by Tumblr