是否有依赖非拉丁字母的编程语言?

时间:2010-05-20 00:38:10

标签: programming-languages alphabet non-latin

我见过的每种编程语言都基于拉丁字母,考虑到我住在加拿大,这并不奇怪...... 但只有基于其他字母表的编程语言才真正有意义,否则全世界明亮的计算机科学家将不得不学习一个新的字母表来继续进行该领域。我知道一个事实是,在其他字母表中占主导地位的国家的人们开发基于拉丁字母的语言(例如来自日本的Ruby),但是编程语言基于阿拉伯语或西里尔语等其他字母表有多常见,甚至编写非字母而非日志汉字等系统的系统? 这些语言中的任何一种都是广泛使用的,还是主要用作教学工具? 自从我开始编程以来,这一直困扰着我,而且我从未遇到过能够想到真正答案的人。

10 个答案:

答案 0 :(得分:36)

你见过Perl吗?

答案 1 :(得分:22)

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

image courtesy of Wikipedia

在非字母类别中,我们还有像LabVIEW这样的编程语言,它主要是图形化的。 (你可以标记对象,你仍然可以进行字符串操作,所以一些文本内容。)LabVIEW已经被用于数据采集和自动化多年,但是当它成为了Lego Mindstorms的默认平台。

答案 2 :(得分:9)

Wikipedia上有一个列表。我不认为它们中的任何一个真的很普遍。许多程序员可以学习用英语关键词编写程序,即使他们不懂语言。 Ruby就是一个很好的例子,你仍会在一些Ruby代码中看到日语标识符和注释。

答案 3 :(得分:5)

好吧,Brainf*不使用拉丁字符,如果你原谅语言......和双关语。

答案 4 :(得分:3)

许多语言都允许使用Unicode标识符。它是standard Java的一部分,而g++MSVC++都有this questionLanguage of variable names?允许它们(另请参阅Should all code be written in English?)并且有些允许使用#define (或者更好)重命名控制结构。

但实际上,人们大多不会这样做。查看过去的问题,例如{{3}},{{3}}等

答案 5 :(得分:2)

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

答案 6 :(得分:2)

在俄罗斯的ERP系统中使用了一个名为after after company的语言,它开发了它1C。但它的标识符和运营商都有英文类似物。

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

答案 7 :(得分:2)

Agda

示例代码段:

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ω)

答案 8 :(得分:1)

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

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

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

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

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

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

答案 9 :(得分:0)

我刚为“wiki”找到了一个有趣的esoteric programming languages