Commit 6b099fb2cf92d238df76e99ebab6e3a13c9149d0
document the basic idea
Dominic Tarr committed on 8/3/2017, 3:02:33 AMParent: afa37756e83086f1c97f3b4543d77e354cd8aa65
Files changed
README.md | changed |
README.md | |||
---|---|---|---|
@@ -1,9 +1,27 @@ | |||
1 | 1 … | # fun | |
2 | 2 … | ||
3 … | +functional system programming. | ||
3 | 4 … | ||
5 … | +Recently, a functional style of programming | ||
6 … | +has become very popular in the front end. | ||
7 … | +react, cycle.js, choo-choo, etc. | ||
4 | 8 … | ||
9 … | +At first, I was deeply skeptical, as a single | ||
10 … | +shared state object seemed to throw out the idea | ||
11 … | +of encapsulation. But then I started to find uses | ||
12 … | +for the idea of a shared state. Encapsulation is good, | ||
13 … | +but being explicit about state is also very good. | ||
5 | 14 … | ||
15 … | +The pattern of separating effects from state is very | ||
16 … | +good for systems programming - because on of the hardest | ||
17 … | +things is dealing with all the possible permutations of event | ||
18 … | +orderings. If you can replay events, and generate events | ||
19 … | +in different orders, it's possible to get free test coverage | ||
20 … | +of possible race conditions. | ||
6 | 21 … | ||
22 … | +## examples | ||
23 … | + | ||
7 | 24 … | ## License | |
8 | 25 … | ||
9 | 26 … | MIT | |
27 … | + |
Built with git-ssb-web