2010-09-08 54 views
2

当我看到这对一些学生写了一个小程序,我经常看到这样的事情:(哈斯克尔,德语):为什么非ascii字符在函数/ var名称中仍然不受欢迎?

ueber = "What the haeck!" 

,而不是

über = "What the häck!" 

被指定为许多现代语言通过UTF-8允许声明名称中包含非标准字符,是否有一个特别的原因可以避免这些项目中的这些特性,这肯定只适用于能够输入这些字符的人们(比如德国学生团队呢? )或者这仅仅是一个历史原因?

我知道,如果您在国际上开发应用程序,您应该在a-zA-Z_0-9保留名称,但是有没有任何理由在“本地”项目中避免此问题?

+0

这可能最好是社区Wiki。我不知道。 – 2010-09-08 11:42:17

+0

嗯......我并不完全知道社区维基的标准,但他们包括AFAIK,它不是一个真正的“问题”,它没有一个明确的答案。 – fuz 2010-09-08 11:51:59

回答

3

是有避免一个项目,这是肯定是唯一的人谁是能够输入这些字符

这当然是主要的原因,这些特殊原因。想到的其他原因是许多开发工具,搜索功能,编辑器,解析器,记录器,代码搜索引擎等在代码中不会期望非ASCII输入。

此外,你永远不知道你的代码可能会在哪里使用!最小的无辜学校项目可以发展成一个很好的开源工具,有一天会在全球范围内使用。在这种情况下,至少在此刻,ASCII 是最小公分母

1

我不得不在法国开发人员开始的一个项目上工作。当有更多人加入该项目时,他们不得不花费相当多的时间将他们的项目翻译成英文。预先向德国学生传授本课,他们不仅可以与其他人分享他们的代码,他们不再需要überueber变量。

顺便说一句,ü是一个字母字符。 +-是非字母数字的,我会说这很明显,为什么他们不喜欢函数名称。

+0

问题其实是,老师**强迫**学生使用德文varnames :( – fuz 2010-09-08 12:21:36

+0

顺便说一句:有没有另外一个术语来表达我想表达的内容?(像ü这样的字符) – fuz 2010-09-08 12:22:44

+0

@FuZxxl你的意思是非ASCII字符。 – 2010-09-08 12:35:15