Alguns idiomas oferecem isso - até certo ponto.
Talvez não seja o seu exemplo específico , mas tome por exemplo uma linha Python:
def minmax(min, max):
def answer(value):
return max > value > min
return answer
inbounds = minmax(5, 15)
inbounds(7) ##returns True
inbounds(3) ##returns False
inbounds(18) ##returns False
Portanto, alguns idiomas são adequados com várias comparações, desde que você a expresse corretamente.
Infelizmente, ele não funciona exatamente como você esperaria para comparações.
>>> def foo(a, b):
... def answer(value):
... return value == a or b
... return answer
...
>>> tester = foo(2, 4)
>>> tester(3)
4
>>> tester(2)
True
>>> tester(4)
4
>>>
"O que você quer dizer ele retorna True ou 4?" - o aluguel depois de você
Uma solução nesse caso, pelo menos com o Python, é usá-lo de maneira um pouco diferente:
>>> def bar(a, b):
... def ans(val):
... return val == a or val == b
... return ans
...
>>> this = bar(4, 10)
>>> this(5)
False
>>> this(4)
True
>>> this(10)
True
>>> this(9)
False
>>>
EDIT: O seguinte também faria algo semelhante, novamente em Python ...
>>> def bar(a, b):
... def answer(val):
... return val in (a, b)
... return answer
...
>>> this = bar(3, 5)
>>> this(3)
True
>>> this(4)
False
>>> this(5)
True
>>>
Portanto, qualquer que seja o idioma que você esteja usando, pode não ser que você não consiga fazê-lo, apenas que você deve primeiro examinar mais de perto como a lógica realmente funciona. Normalmente, é apenas uma questão de saber o que você está 'realmente pedindo' o idioma para lhe dizer.