Ruby 为什么宇宙飞船操作员只有一个等号?

Ruby 为什么宇宙飞船操作员只有一个等号?,ruby,perl,spaceship-operator,Ruby,Perl,Spaceship Operator,为什么宇宙飞船操作员选择了一个等号而不是两个?这是否被视为与通常意义上的一个等号赋值和两个意义比较不一致?宇宙飞船操作符是ab的组合。据推测,选择单个等号的原因与选择它的原因相同,=和为什么它会有两个?在=和中只有一个=。这一点也不矛盾。只有=不一致,这是为了避免与赋值运算符冲突。取消-1。在这里,人们可能会如此不必要地刻薄,这是一个非常有效的问题,不管怎样,对于一个程序员来说。它可以提供更多的信息,但阅读起来相当枯燥,与Perl的文档基本相同。拉里·沃尔(Larry Wall)接受过一些语言学

为什么宇宙飞船操作员选择了一个等号而不是两个?这是否被视为与通常意义上的一个等号赋值和两个意义比较不一致?

宇宙飞船操作符是
a
a==b
a>b
的组合。据推测,选择单个等号的原因与选择它的原因相同,
=
为什么它会有两个?在
=
中只有一个=。这一点也不矛盾。只有
=
不一致,这是为了避免与赋值运算符冲突。

取消-1。在这里,人们可能会如此不必要地刻薄,这是一个非常有效的问题,不管怎样,对于一个程序员来说。它可以提供更多的信息,但阅读起来相当枯燥,与Perl的文档基本相同。拉里·沃尔(Larry Wall)接受过一些语言学方面的培训,可能有一个更合理的理由,但除了Perl的文档之外,我从未见过其他文档。就我个人而言,多年来,无论他们用何种语言对我们施加了何种操作员选择,我都在处理看似武断的决定,我已经放弃了,只是接受了它们的存在。将其称为“太空船操作员”会让它变得有趣。更糟糕的是,它可能是
为什么数学“大于/小于或等于”符号中的双水平条在美国和其他一些国家变成了单水平条?@sawa=>Perl的许多功能都是哈夫曼编码的(也就是说,普通操作比普通操作短)。
=
用于赋值,而
=
用于相等,因为在Perl中赋值比相等测试更常见。