1
1
mirror of https://github.com/thma/LtuPatternFactory.git synced 2025-01-07 11:57:50 +03:00

add circleci badge

This commit is contained in:
thma 2018-11-26 18:13:07 +01:00 committed by GitHub
parent a1c27c0a4d
commit af55a63a76
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,5 +1,7 @@
# Lambda the Ultimate Pattern Factory
[![CircleCI](https://circleci.com/gh/thma/LtuPatternFactory.svg?style=svg)](https://circleci.com/gh/thma/LtuPatternFactory)
My first programming languages were Lisp, Scheme, and ML. When I later started to work in OO languages like C++ and Java I noticed that idioms that are standard vocabulary in functional programming (fp) were not so easy to achieve and required sophisticated structures. Books like [Design Patterns: Elements of Reusable Object-Oriented Software](https://en.wikipedia.org/wiki/Design_Patterns) were a great starting point to reason about those structures. One of my earliest findings was that several of the GoF-Patterns had a stark resemblance of structures that are built into in functional languages: for instance the strategy pattern corresponds to higher order functions in fp (more details see [below](#strategy)).
Recently, while re-reading through the [Typeclassopedia](https://wiki.haskell.org/Typeclassopedia) I thought it would be a good exercise to map the structure of software [design-patterns](https://en.wikipedia.org/wiki/Software_design_pattern#Classification_and_list) to the concepts found in the Haskell type class library and in functional programming in general.