Raku 中的 Bool 上下文中的 Range 可以计算为 False 吗?

问题描述 投票:0回答:1

在使用

Range
解决问题时,我注意到具有 0 个元素的
Range
将是
True
作为
Bool
。在什么情况下
Range
可以成为
False

[0] > (^0).so
True
[1] > (1..0).so
True
boolean range raku
1个回答
0
投票

该行为与 Raku v6.d 之前的设计文档不匹配,空的

Range
预计为
False
。 Raku v6.e 正在解决这个问题

[0] > use v6.e.PREVIEW
Nil
[1] > (^0).so
False
[2] > (1..0).so
False

https://github.com/Raku/old-design-docs/blob/a4c36c683dafdad0bb55996e78b66a1f48fc703c/S03-operators.pod#L3608

https://github.com/rakudo/rakudo/issues/5222

© www.soinside.com 2019 - 2024. All rights reserved.