为什么Perl变量需要从不同的字符(sigils)开始?
$开始%开头@开始他们为什么是这样的?
发布于 2009-07-07 10:49:39
这是因为Perl使用西格尔斯。
在计算机编程中,sigil (发音为/'sɪdʒ.ɪl/或/'sɪg.ɪl/;复数sigilia或sigils)是一个附加在变量名称上的符号,显示变量的数据类型或范围。1999年,菲利普·格温第一次使用这个词来代替“变量名前面的有趣字符”。这个词基于一个神奇的符号(参见sigil (魔法))。
发布于 2009-07-07 13:41:34
拉里·沃尔解释等人在"https://en.wikipedia.org/wiki/Programming_Perl“中的几个原因
在任何给定的命名空间内..。每个变量类型都有自己的子名称空间,由有趣的字符决定。您可以在不担心冲突的情况下,对标量变量、数组或散列使用相同的名称(或者,对此,可以使用文件句柄、子例程事项、标签或您的宠物骆驼)。 ..。 与大多数计算机语言一样,Perl有一个保留单词列表,它将其识别为特殊的关键字。但是,因为变量名总是以一个有趣的字符开头,所以保留的单词实际上并不与变量名冲突。
发布于 2009-07-07 14:34:02
来自http://www.wall.org/%7Elarry/natural.html
英语使用数字和词序,代词中有一个格系统的痕迹:“男人看着男人,他们回头看他。”在那句话里很清楚是谁在对谁做什么。类似地,Perl在其名词上有数字标记;也就是说,$dog是一条狗,@dog (可能)很多。所以,在英语中,$和@有点像"this“和”this“。
https://stackoverflow.com/questions/1091634
复制相似问题