28

我见过的每一种编程语言都是基于拉丁字母的,考虑到我住在加拿大,这并不奇怪……但只有基于其他字母的编程语言才会真正有意义,或者是聪明的计算机科学家。世界将不得不学习一种新的字母表才能在该领域继续前进。我知道一个事实,在以其他字母为主的国家中,人们开发基于拉丁字母的语言(例如来自日本的 Ruby),但是编程语言基于其他字母(如阿拉伯语或西里尔字母)是多么普遍,甚至不是字母的书写系统,而是像日本汉字这样的自然符号?这些语言中的任何一种也正在广泛使用中,还是它们主要用作教学工具?自从我开始编程以来,这一直困扰着我,而且我从未遇到过能想到真正答案的人。

4

10 回答 10

37

你见过 Perl 吗?

于 2010-05-20T00:39:56.073 回答
22

APL可能是最广为人知的。它甚至有一个很酷的键盘覆盖层(或者它是你必须购买的特殊键盘?):

图片由维基百科提供

在非字母类别中,我们还有LabVIEW等编程语言,它主要是图形化的。(您可以标记对象,并且仍然可以进行字符串操作,因此有一些文本内容。) LabVIEW 多年来一直用于数据采集和自动化,但在成为Lego Mindstorms的默认平台时获得了一些普及。

于 2010-05-20T00:40:42.483 回答
10

维基百科上有一个列表。我不认为它们中的任何一个是真正流行的。许多程序员即使不懂语言,也可以学习用英文关键字编写程序。Ruby 是一个很好的例子,您仍然会在一些 Ruby 代码中看到日语标识符和注释。

于 2010-05-20T00:50:02.103 回答
5

好吧,Brainf*不使用拉丁字符,如果您原谅语言……和双关语的话。

于 2010-05-20T09:12:06.167 回答
3

许多语言允许使用 Unicode 标识符。它是标准 Java的一部分,g++(尽管你必须使用 \uNNNN 转义)和MSVC++都允许它们(另见这个问题)并且有些允许使用#define(或者更好)重命名控制结构。

但实际上,人们在大多数情况下不会这样做。查看过去的问题,例如变量名称的语言?,所有代码都应该用英文写吗?, ETC。

于 2010-05-20T00:40:14.920 回答
2

俄罗斯 ERP 系统中使用了一种语言,称为公司,它开发了它1C。但它的标识符和运算符有英语类似物。

另外,我知道它haskell支持 unicode 标识符,因此您可以使用任何字母编写程序。但这没有用(我的母语是俄语)。你必须用本地字母输入程序消息和有用的评论就足够了。

于 2010-05-20T02:17:54.337 回答
2

好吧,总是有APL。它有自己的 UNICODE 字符,我相信它过去也需要特殊的键盘。

于 2010-05-20T00:41:29.597 回答
2

阿格达_

示例片段:

mutual
   data ωChain : Set where
     _∷_,_ : ∀ (x : carrier) (xω : ∞ ωChain) (p : x ≼ xω) → ωChain

   head : ωChain → carrier
   head (x ∷ _ , _) = x

   _≼_ : carrier → ∞ ωChain → Set
   x ≼ xω = x ≤ head (♭ xω)
于 2010-05-22T14:10:04.050 回答
1

其他人使用除了拉丁字母之外还使用标点符号的语言进行回答。我想知道为什么没有人提到数字 0 到 9。

在某些语言中,以及在某些语言的某些实现中,程序员可以在标识符中使用范围广泛的字符,例如阿拉伯字符或中文字符。这并不意味着语言依赖于它们。

在大多数语言中,程序员可以在字符串文字(在引号中)和注释中使用范围广泛的字符。同样,这并不意味着语言依赖于它们。

在我见过的每一种编程语言中,该语言确实依赖于标点符号和数字。所以这回答了你的问题,但不是你期望的方式。

现在让我们试着找到一些有意义的东西。是否存在从非拉丁字母中选择关键字的编程语言?我猜不会,除了笑话语言。发明一种使某些程序员甚至无法输入程序的编程语言有什么意义?

编辑:我的猜测是错误的。除了 APL 使用各种发明的标点符号外,它确实依赖于一些希腊关键字,其中每个关键字都是一个字母长,例如字母 rho。

于 2010-05-20T01:04:41.237 回答
0

我刚刚为“深奥的编程语言”找到了一个有趣的wiki

于 2010-05-20T09:01:49.343 回答