• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer

LispCast

Making the world safe for Functional Programming

  • Hire Eric
  • Podcast
  • Essays
  • About

Thoughts on Functional Programming Podcast

An off-the-cuff stream of Functional Programming ideas, skills, patterns, and news from Functional Programming expert Eric Normand.

Subscribe on iTunes, Google Play Music, Overcast, or via RSS.

Are monads practical?

Eric Normand · Updated December 9, 2019

Bruno Ribeiro asked a great question about the practical uses of monads. Are they useful? Why are they used so much in Haskell? In this episode, we briefly go over the history of monads in Haskell and how they allow you to do imperative programming in a pure functional language.

Where does structural similarity come from?

Eric Normand · Published November 25, 2019

In a recent episode, I said structural similarity comes from the algebraic properties of the relationships between things. But that’s not the case. Rotislav mentioned in the comments that it actually comes from the structure in the relationships. I explore that idea in this episode.

Do you need immutability for functional programming?

Eric Normand · Published November 21, 2019

Of course immutable data structures are great, but are they necessary for FP? Short answer is: no. There’s a lot of functional ideas and perspectives that can be applied even if you don’t have them. And you can always make things immutable through discipline. In this episode, we explore those two ideas.

Algebra is about composition

Eric Normand · Updated November 21, 2019

When we look at the definitions of algebraic properties, we often see that we are defining how things compose. This is one of the main advantages of using algebraic properties to constrain our operations. If we define how they should compose before we implement them (as a unit test, for instance) we can guarantee that things will compose.

What do product and sum types have to do with data modeling?

Eric Normand · Updated November 18, 2019

Product and sum types allow us to exactly model any number of states with a lot of flexibility.

Can you have a clean domain model?

Eric Normand · Published November 11, 2019

I was asked a great question by a listener about whether it’s always possible to find a good domain model. Sometimes, the business rules are so messy, how can we find something clean and stable? In this episode, I explore how we can find a stable and clean domain model within the chaos.

What is abstraction?

Eric Normand · Published November 7, 2019

We use the term ‘abstraction’ all the time. But what does it mean? If it’s such an important concept, we should have a clear idea of its meaning. In this episode, I go over two related definitions from two important sources.

Why does stratified design work?

Eric Normand · Published November 4, 2019

Stratified design is one where you build more specific things on top of more general things, typically with many layers. But why is this powerful? In this episode, we explore why it’s sometimes easier to solve a more general problem than a specific one.

Why are algebraic properties important?

Eric Normand · Published October 31, 2019

We often write software to automate an existing physical process. But what makes this possible? When translating from physical to digital, something must be preserved. In this episode, we look into what is preserved across that translation and why algebraic properties might help us find it.

  • « Go to Previous Page
  • Go to page 1
  • Go to page 2
  • Go to page 3
  • Go to page 4
  • Go to page 5
  • Interim pages omitted …
  • Go to page 20
  • Go to Next Page »

Primary Sidebar

Please leave a review on iTunes.

Subscribe

RSS
iTunes
Google Play
Overcast

PROFESSIONAL SERVICES

                  Hire Eric

  • Speaking
  • Consulting
  • Training

KEEP IN TOUCH WITH ERIC NORMAND

  • Email
  • GitHub
  • LinkedIn
  • Phone
  • RSS
  • Twitter
  • YouTube

Footer

  • Email
  • GitHub
  • LinkedIn
  • Phone
  • RSS
  • Twitter
  • YouTube

Professional Services

  • Speaking
  • Consulting
  • Training

Content

  • Essays
  • Podcast
  • Presentations

Copyright © 2021 Eric Normand