JSON Parser 100% From Scratch in Haskell (only 111 lines)
Tsoding3 HN recommenders · 2020–2022
205K views · tutorial · evergreen · Uploaded 2019-11-22
Tsoding live-codes a JSON parser from scratch in Haskell in about 111 lines, using only the standard library. It is an edited Twitch stream that explains the intuition behind parser combinators, functors, applicatives and monads.
HN recommends it as a hands-on way to understand Haskell and parser combinators by watching a parser get built live.
53:22Ruby Conf 12 - Y Not- Adventures in Functional Programming by Jim Weirich
Confreaks
42:03The Soul of Erlang and Elixir • Sasa Juric • GOTO 2019
GOTO Conferences
1:01:39"Simple Made Easy" - Rich Hickey (2011)
Strange Loop Conference
36:45Rich Harris - Rethinking reactivity
You Gotta Love Frontend
25:06"Making Impossible States Impossible" by Richard Feldman
elm-conf
51:18Lexical Scanning in Go - Rob Pike
GoogleFOSSSydney
1:31:06William Byrd on "The Most Beautiful Program Ever Written" [PWL NYC]
PapersWeLove
31:44The Value of Values with Rich Hickey
InfoQ
4 comments from Hacker News
Agreed! I've been trying to learn haskell for a long time, and this guy writes a json parser live, giving his intuition along the way. It's helped me immensely. [VIDEO]
To understand monads, I think it helps to know a language where expressing such a concept is more natural. Although I do not claim to know 100% what monads are yet, coming across these features made it easier for me to understand the concept a little bit. - Algebraic data types - OCaml's let expressions - F#'s computation expressions I also think that it is important to write something that naturally requires the use of monads. One thing that spring to mind is Parser Combinators. - [LINK] - [VIDEO]
I have recently discovered [tsoding twitch channel]( [LINK] ) which describes itself as Recreational programming. The topics range from webassembly and Game development to functional programming in haskell and ocaml. Some of the interesting random things I found there include: * [a parser combinator in haskell]( [VIDEO] ) * [stack based language compiler in ocaml]( [LINK] ) You can find all the things that were done during the streams in [LINK] . You can also find his schedule at [LINK]
Nice to see Tsoding on the front page. He has another great video that covers a bunch of topics while making a JSON parser with only the Haskell standard library: [VIDEO]