I just looked into why MLton does so well on the except benchmark and discovered that it is able to turn all the raise/handle pairs into direct jumps, since it can figure out the control-flow at compile time. Maybe fair, maybe not, but I thought you should know. Personally, I'm pleased that the analysis does this.