An implementation of Warren's abstract machine in Dart