Slava proposes a new syntax for multi-methods in factor which just happens to be a total re-invention of the way normal words work by turning everything generic. As a side-effect we then wind up getting optional static type checks and compiler dispatch-elimination optimisation across word boundaries.

It's stuff like this that makes factor an exciting language to be programming with. It seems every couple of months we get a new feature or approach which turns everything on its head. Last time it was fry, then cleave combinators.

I regularly question doing my own projects in such a niche language, especially one with a brutal learning curve, but the reality is that factor is streets ahead of anything else I've developed with, and still accelerating...