Tags » Type System

29LT Azer : Serious & Amicable

29LT Azer type family consist of 14 styles, 7 Standard styles and 7 Slanted styles, covering the following weights: Thin, Extra Light, Light, Regular, Medium, Bold, and Black. 1,040 more words

Pascal Zoghbi

Compile-time string concatenation

We will start with a bug, taken from real life. It spans across three files:

#include <string>

struct Service
  static const std::string NAME;
… 3,774 more words

Profunctor Parametricity

The Free Theorem for Ends

In Haskell, the end of a profunctor p is defined as a product of all diagonal elements:

forall c. p c c… 1,390 more words

Toggles in functions

Have you ever seen a function call like this?

process(true, false);

We are processing something: this should be clear from the context. But what do these parameters mean? 1,117 more words


Applicative Functors

Unlike monads, which came into programming straight from category theory, applicative functors have their origins in programming. McBride and Paterson introduced applicative functors as a programming pearl in their paper… 3,069 more words


More const — fewer bugs

I have just read article “Please declare your variables as const” by Bartłomiej Filipek. It argues that declaring your variables const is beneficial for reasons other than performance. 360 more words