Înapoi la articole →

Cel mai recent articol

Ultima verificare

Urmăritori 0 urmăritori
Articole: 12
  1. Removing recursion via explicit callstack simulation

    I love recursion.

  2. Continuation-Passing Style in TypeScript

    Continuation-passing style (CPS) is an occasionally very useful technique which is fairly niche for developers outside of functional programming languages.

  3. Recursive Problems Benefit from Recursive Solutions

    It seems to be common knowledge that any recursive function can be transformed into an iterative function.

  4. Tradeoffs of Highly-Expressive Types

    I’ve had three different things on my mind recently: I read the excellent blog post “Hyper-Typing”.

  5. Extensible TypeScript with Object Algebras

    We say that code is “extensible” when it can be augmented with additional behavior without requiring modifications to existing code.

  6. JavaScript and TypeScript developers often look down on the original Gang of Four design patterns as irrelevant.

  7. The Church and Scott Encodings of Algebraic Data Types

    Previously I wrote about the Church encoding of non-recursive algebraic data types.

  8. The Church Encoding of Simple Algebraic Data Types

    When first learning about the lambda calculus, students are frequently introduced to Church numerals and Church-encoded booleans.

  9. An Introduction to Algebraic Data Types

    In my last post I said that there were three fundamental approaches to representing data: abstract data types, objects, and algebraic data types.

  10. Abstract Data Types and Objects

    There are three main methods of representing data which developers are likely to encounter: abstract data types, algebraic data types, and objects.

  11. My Medium Blog

    I previously did my blogging on Medium.

  12. The Problem with "Overengineering"

    I worry about using terms which have heavily overloaded meanings.