哪些广泛使用的编程语言是在支持Unicode的基础上设计的?

许多编程语言在后来的版本中添加了Unicode支持,但是从第一天开始就使用Unicode支持广泛使用哪种语言?

有帮助吗?

解决方案

Java可能是第一个获得全面支持Unicode的流行语言。

其他提示

基本上所有.NET语言都是Unicode语言,例如 C# VB.NET

Python 3中有许多重大变化,其中包括切换到所有文本的Unicode

所以 Python 并没有为Unicode设计,但是Python 3 是。

我不知道其他语言有多远,但C#的一个有趣之处在于,不仅运行时 string 类等)unicode意识到 - 但源代码完全支持unicode:

using משליט = System.Object;
using תוצאה = System.Int32;
public class שלום : משליט  {
    public תוצאה בית() {
        int אלף = 0;
        for (int λ = 0; λ < 20; λ++) אלף+=λ;
        return אלף;
    }
}

Google的 Go编程语言支持Unicode,可与UTF-8配合使用。

从一开始就用编程语言设计未来的Unicode支持非常困难。

Java是将其设计为语言规范的语言之一。但是,Java v1.0中的Unicode支持是不同的来自v5 和Java SDK的v6。这主要是由于最初设计语言时语言规范所适用的Unicode版本。 Java尝试跟踪每个主要版本的Unicode标准中的更改。

JLS的早期实现可以声称支持Unicode,主要是因为Unicode本身支持65536个字符(Java支持Unicode 1.1的v1.0,Java v1.4支持Unicode 3.0),它与16位存储空间兼容由人物组成。随着Unicode 3.1的变化 - 它是一个不断发展的标准,通常在每个版本中添加更多字符。 3.1中稍后添加的字符称为补充字符。 Java 5中通过 JSR-204 添加了对补充字符的支持; Java 5和6支持Unicode 4.0。

因此,如果不同的编程语言以不同的方式实现Unicode支持,请不要感到惊讶。

另一方面,PHP(!!)和Ruby在开始时没有内置Unicode支持。

PS:支持v5.1的Unicode将在 Java 7

Java和.NET语言,正如其他评论者所指出的那样,尽管Java的字符串是UTF-16而不是UCS或UTF-8。 (当时,它似乎是一个明智的想法!现在显然UTF-8或UCS会更好。)Python 3实际上是Python 1.x和2.x中不同的,不兼容的语言,因此它也符合条件。

1992年左右的Plan9语言可能是第一个这样做的:他们的方言C, rc ,Alef, mk ,ACID等等都是Unicode - 启用。他们采用了非常简单的方法,即任何非ASCII的都是标识符字符。请参阅他们的

Perl&nbsp; 6 从头开始提供完整的unicode支持。
(使用 Rakudo&nbsp; Perl&nbsp; 6编译器作为第一个实现)

一般概述

Unicode运营商

字符串,正则表达式和语法都基于字形操作,即使对于那些没有组合表示的代码点组合(对于那些情况,动态生成组合表示人工代码点)。

存在一种特殊的编码来处理未知编码的数据“utf8-c8”:这在可能的情况下假设为utf-8,但为不可编码的序列创建了人工代码点,允许它们在必要时进行往返。

有时,首次设计时包含在语言中的功能并不总是最好的。

语言随着时间的推移而发生变化,许多语言已经变得臃肿,具有额外的功能,但不一定与最初包含的功能保持同步。

所以我只是抛弃你不应该对最近添加了Unicode的语言进行折扣的想法。它们的优点是可以在已经成熟的开发工具中添加Unicode,并且有机会在第一次就能正确完成。

考虑到这一点,我想确保将Delphi包含在这里,作为您的答案之一。 Embarcadero在其Delphi 2009版本中添加了Unicode,并在其上做了很好的工作。终于促使我从我使用了10年的Delphi 4升级就足够了。

Java使用Unicode字符集中的字符。

java和.net语言

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top