A Sequential Implementation of Concurrent Prolog Based on the Shallow Binding Scheme