Skip to content

Instantly share code, notes, and snippets.

@ctlimctlim
ctlimctlim / MonoidsInHaskellAnIntroductions.md
Created December 6, 2021 07:37 — forked from cscalfani/MonoidsInHaskellAnIntroductions.md
Monoids in Haskell, an Introduction

Monoids in Haskell, an Introduction

Why should programmers care about Monoids? Because Monoids are a common pattern that shows up over and over in programming. And when patterns show up, we can abstract them and leverage work we've done in the past. This allows us to quickly develop solutions on top of proven, stable code.

Add Commutative Property to a Monoid (Commutative Monoid) and you have something that can be executed in parallel. With the end of Moore's Law, parallelism is our only hope to increasing processing speeds.

What follows is what I've learned after studying Monoids. It is hardly complete, but hopefully will prove to be helpful as an introduction for others.

Monoid Lineage

@ctlimctlim
ctlimctlim / blockly.xml
Last active May 18, 2021 09:00
Stoic Tutorial Part 02 - 18 May 2021
When
[Case
(Deposit
(Role "Landlord")
(Role "Tenant")
(Token "" "")
(Constant 100)
)
(When
[Case
@ctlimctlim
ctlimctlim / blockly.xml
Last active May 18, 2021 08:57
Stoic Tutorial Part 01 - 18 May 2021
When
[Case
(Deposit
(Role "Landlord")
(Role "Tenant")
(Token "" "")
(Constant 100)
)
(When
[Case
@ctlimctlim
ctlimctlim / blockly.xml
Last active May 18, 2021 08:18
Stoic Tutorial Part 01 - 18 May 2021
When
[Case
(Deposit
(Role "Landlord")
(Role "Tenant")
(Token "" "")
(Constant 100)
)
(When
[Case
@ctlimctlim
ctlimctlim / blockly.xml
Last active May 18, 2021 07:30
Stoic Tutorial 18 May 2021
Close