8 bookmarks. First posted by pablomeier 12 weeks ago.


A collection of well known slogans about software design that are especially well known in the functional programming world.

1. Parse, don’t validate
2. Make illegal states unrepresentable
3. Errors as values
4. Functional core, imperative shell
5. Smart constructor
software-design  software-engineering 
18 days ago by jschuster
Dmitrii recently posted a tweet (now also reposted to Bluesky) titled “Functional programming self-affirmations” that listed five items:

Parse, don’t validate
Make illegal states unrepresentable
Errors as values
Functional core, imperative shell
Smart constructor
These got me interested, but as usual, the problem with such distilled mantras is that you need a lot of context to understand and use them. What does it mean to have a “smart constructor”? In the comments Dmitrii himself and other people added links to suggested reading. Let’s go over each item and uncover what it means.
functionalprogramming 
12 weeks ago by rubinson
Another post that I feel does a good job on concepts I agree with
programming 
12 weeks ago by pablomeier