Algebraic patterns - Semigroup

Given three puzzle pieces, these can be put together in two different ways, starting by combining the first and second, or staring with the second and third. Either way the final result is required to be the same. This means solving a puzzle is easily parallelizable. Rest of the article…

The Functor pattern

Also Functional programming has its own set of patterns (with more cryptic names w.r.t. OOP's patterns; such as Functor, Monoid and Monad). Here's a nice introduction (in C++11) to the Functor pattern by Bartosz Milewski.…

MVC as a pattern

There is no universally unique MVC pattern. MVC is a concept rather than a solid programming framework. @ramon-chan…