Functional programming at the type level in TypeScript | Hacker News Reader