From 617f803355d1cf1c0b38712b76a3ac647267b3f4 Mon Sep 17 00:00:00 2001 From: Mark Thom Date: Wed, 19 Feb 2020 15:55:56 -0700 Subject: [PATCH] update between/3 to allow inf as upper bound --- src/prolog/lib/between.pl | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/prolog/lib/between.pl b/src/prolog/lib/between.pl index 16c73145..a8e06882 100644 --- a/src/prolog/lib/between.pl +++ b/src/prolog/lib/between.pl @@ -6,10 +6,15 @@ :- use_module(library(error)). between(Lower, Upper, X) :- - must_be(integer, Lower), - must_be(integer, Upper), - can_be(integer, X), - between_(Lower, Upper, X). + ( Upper == inf -> + must_be(integer, Lower), + can_be(integer, X), + enumerate_nats(Lower, X) + ; must_be(integer, Lower), + must_be(integer, Upper), + can_be(integer, X), + between_(Lower, Upper, X) + ). between_(Lower, Upper, Lower) :- Lower =< Upper. -- 2.54.0