An implementation of the B Programming Language