minimalist prolog shell