应该怎样调用......运算符?

时间:2009-09-07 05:35:54

标签: perl

... operators与列表上下文中的范围运算符(..)相同,几乎与标量上下文中的触发器运算符(..)相同,但将它们称为范围运算符和触发器操作符似乎是错误的,因为这些名称通常与..相关联,后者的行为略有不同(至少在标量上下文中)。

现在,我称他们为替代范围/触发器操作员。

3 个答案:

答案 0 :(得分:2)

由于...与列表上下文中的..相同,因此我称之为范围运算符。赋予它另一个名称意味着它会做出不同的事情。如果由于某种原因我需要将它与..区分开来,我可能会将其称为“范围运算符的三点语法。”

如果我想与人混淆,我会告诉他们这是“非常长的范围”。 ;)

在标量上下文中,我通常将...称为“类似于sed的触发器操作符”,因为在文档中引用了sed行为,但我不喜欢这个名称。那个“长触发器”操作符怎么样?助记符是...长一个点并再花一个周期来评估正确的操作数。

答案 1 :(得分:0)

我喜欢将其视为省略号运算符 - 这清楚地表明它是关于多个点(“......”或“......”)并且对它的功能的混淆较少。

答案 2 :(得分:0)

在5.11中,期望一个术语(由于一个错误,目前只在一个陈述的开头),...是yada yada算子。

否则,在列表上下文中,...是范围运算符(虽然我认为它是代码气味,因为代码似乎想要的东西不同于......但事实上并没有任何不同)。

否则,它是触发器操作符,其中一种味道。如果我不得不给它一个形容词,我会说sed式的触发器操作符。在the perl6 spec它(好吧,无论如何,fff替换)被称为“flipflop(sed style)”。如果我想给它起一个不基于其他语言的名称,我首先要更新perl6规范,然后更新perl5 doc。