Iโm starting โ100 (interrupted) days of functional programmingโ #100DaysOfFP21:52 PM - 03 Jan 2019
Going through a Twitter thread with +100 tweets is not handy at all. So here's the compilation of all the tweets for each day (so far).
Table of Content
01-10
00:09 AM - 04 Jan 2019
#100DaysOfFP Day 02
Updated yesterday cipher to support upper case letters16:05 PM - 04 Jan 2019
Had some problems with my Haskell+vim setup so I'll pause the haskellbook.com reading for now and do some things with TypeScript, which already were in my backlog.21:56 PM - 08 Jan 2019
#100DaysOfFP Day 03
Using Task (by @sherman3ero) instead of Promise to handle async code. Task is lazy, errors are typed and it differentiates between mapping, chaining and consuming the result.
Task: github.com/ts-task/task & github.com/ts-task/fetch
Code: codesandbox.io/s/30jm8oymx622:04 PM - 08 Jan 2019
#100DaysOfFP Day 04
Replaced the state values used to keep track of the status of the fetch with the RemoteData type. Not only the render method is much simpler but all the states are consistent as we cannot have combinations that don't make sense.
Code: codesandbox.io/s/q7yl9v6qn422:28 PM - 09 Jan 2019
I had already implemented RemoteData (github.com/gillchristian/โฆ). Will share more about it in the upcoming days as work on some improvements and investigate how to make it more useful.22:30 PM - 09 Jan 2019
#100DaysOfFP Day 05 (from yesterday night)
Since I was already using React for the example decided to migrate it to hooks and do some reading about algebraic effects, the concept behind hooks.
Code: codesandbox.io/s/zr3p4zvo1408:29 AM - 11 Jan 2019
I like how you handle effects in standalone functions instead of methods that are tied to a class. Those functions can be tested very easily in isolation and the runtime, React in this case, guarantees they will work in the context of the component.08:34 AM - 11 Jan 2019
#100DaysOfFP Day 06
Here's the implementation of RemoteData. Very simple, just a wrapper to encapsulate the different states of fetching data.
Will work on adding tests to make sure it satisfies the laws in following days.
Code: github.com/gillchristian/โฆ22:11 PM - 14 Jan 2019
#100DaysOfFP Day 07
Did some reading (tomharding.me/2017/03/27/fanโฆ) to refresh my memory about functors and added a few simple tests to RemoteData validate the functor laws.
Code: github.com/gillchristian/โฆ22:35 PM - 15 Jan 2019
#100DaysOfFP Day 08
Read the Monad's post (tomharding.me/2017/06/05/fanโฆ by @am_i_tom) and added tests to cover the monad laws.
Code: github.com/gillchristian/โฆ21:50 PM - 16 Jan 2019
#100DaysOfFP Day 09
Poor's man pattern matching for string unions and enums in TypeScript.
codesandbox.io/s/lx23kpwvpz09:12 AM - 01 Feb 2019
#100DaysOfFP Day 10 ๐
Added applicative's methods (ap & lift2) to RemoteData
Also updated the readme to make it usable github.com/gillchristian/โฆ ๐12:12 PM - 10 Feb 2019
11-20
#100DaysOfFP Day 11
Playing around with the Applicative instance for function.23:55 PM - 18 Feb 2019
#100DaysOfFP Day 12
Wrote some notes from the first chapter of the haskellbook.com
dev.to/gillchristian/โฆ22:50 PM - 25 Feb 2019
00:22 AM - 15 Mar 2019
#100DaysOfFP Day 14
Yet another about haskellbook.com on dev.to, this time out typeclasses ๐ค
dev.to/gillchristian/โฆ22:32 PM - 26 Mar 2019
#100DaysOfFP Day 15
Functional patterns and Recursion from haskellbook.com on dev.to ๐ค
dev.to/gillchristian/โฆ06:30 AM - 09 Apr 2019
#100DaysOfFP Day 16
I finally got back to this series (or challenge? whatever it is)
Lists chapter from haskellbook.com on dev.to ๐ค
dev.to/gillchristian/โฆ20:54 PM - 14 May 2019
#100DaysOfFP Day 17
Encoding and decoding JSON in Haskell with some compiler and library magic ๐งโโ๏ธ๐งโโ๏ธ
dev.to/gillchristian/โฆ21:12 PM - 15 May 2019
22:19 PM - 05 Jun 2019
#100DaysOfFP Day 19
Pattern matching in Erlang. It can be used for assignment, or should I say assignment is one of the use cases of pattern matching ๐คฏ21:19 PM - 13 Aug 2019
The last case fails because it cannot assign (bind) 1 and 2 to X, since variables are immutable and can only be bound once.21:22 PM - 13 Aug 2019
#100DaysOfFP Day 20
Back to Haskell. Applicative operators to sequense and discard (left/right) operations.20:04 PM - 15 Sep 2019
21-30
#100DaysOfFP Day 20
Continuing with the operators. The functor counterparts to yesterday's operators let you discard an operation in favor of an arbitrary value (still in the functor context).
hackage.haskell.org/package/base-4โฆ21:07 PM - 17 Sep 2019
#100DaysOfFP Day 22
The applicative (*>) operator we saw the other day has "a Monad version"
hackage.haskell.org/package/base-4โฆ21:36 PM - 18 Sep 2019
#100DaysOfFP Day 23
One thing I find interesting about Haskell, and FP in general, the simple patterns keep repeating as more complexity is added.
The sequence operators from Applicative and Monad are the "lifted" versions of `const`.21:05 PM - 22 Sep 2019
23:10 PM - 23 Sep 2019
14:13 PM - 01 Dec 2019
#100DaysOfFP Day 27
Advent of Code Day 2 ๐๐จโ๐ป๐ in #Haskell
Slow one for today (~10s on part 2), but it did the job and I'm lazy to optimize it.
github.com/gillchristian/โฆ18:50 PM - 02 Dec 2019
False alarm, it takes ~10s when running on GHCi. But building with compiler optimizations and running that takes ~800ms. Which is for sure good enough ๐21:30 PM - 02 Dec 2019
#100DaysOfFP Day 28
Catching up with Advent of Code
Day 3 ๐๐จโ๐ป๐ in #Haskell
Not so happy about part 2 ๐ but at least I got the star ๐
github.com/gillchristian/โฆ21:34 PM - 08 Dec 2019
#100DaysOfFP Day 29
As I'm introducing io-ts at work (@Catawiki_Tech) and it has a dependency on fp-ts, today I wrote about what you need to know about fp-ts to work with io-ts.
dev.to/gillchristian/โฆ14:54 PM - 19 Dec 2019
@Catawiki_Tech #100DaysOfFP Day 30
The last one for this year ๐
A simple CLI to watch a command until it's output matches some pattern. Still WIP.
Learned about handling processes, parsing CLI args/flags and clearing terminal output.
github.com/gillchristian/โฆ19:16 PM - 31 Dec 2019
31-40
@Catawiki_Tech #100DaysOfFP Day 31
Functors and Applicatives, why do we need them?
dev.to/gillchristian/โฆ23:36 PM - 08 Jan 2020
22:24 PM - 13 Jan 2020
@Catawiki_Tech #100DaysOfFP Day 33
Applicative instance of (->) functions allows to apply an argument (x) to two unary functions (f & g) and then apply the result of each to a third function (h) to produce the result (y).
Thanks @mvaldesdeleon for the explanation and the nice graph!09:52 AM - 18 Feb 2020
#100DaysOfFP Day 34
Refactored my CLI todos app to use ReaderT (first time using it.)
Feels really good to stop passing around the same argument.
github.com/gillchristian/โฆ21:59 PM - 08 Mar 2020
...
41-50
...
51-60
...
61-70
...
71-80
...
81-90
...
91-100 ๐
...
Top comments (0)