Algorithm W implementation
I worked on the o'caml implementation of Milner's algorithm W. I hoped I would finish it early today (and actually 'nearly' everything was working in the early afternoon), but got stuck on a naughty bug with 'let' expressions. It seems (but I am not sure this is actually the case) that I am not determining correctly which variables are generic and which are not.
Usually, the more I glance at the same bit of code, the less I understand what is going on. So, since I was getting nowhere with the debugging today, I left it for tomorrow and started studying Wand's 1987 paper 'Complete Type Inference for Simple Objects'. I haven't finished reading it yet.