Pregunta

¿Qué lenguajes de programación ampliamente utilizados se diseñaron desde cero con soporte Unicode?

Muchos lenguajes de programación han agregado soporte Unicode como una ocurrencia tardía en versiones posteriores, pero ¿qué lenguajes ampliamente utilizados se lanzaron con soporte Unicode desde el primer día?

¿Fue útil?

Solución

Java fue probablemente el primer lenguaje popular en tener soporte básico de Unicode.

Otros consejos

Básicamente, todos los lenguajes .NET son lenguajes Unicode, como C # y VB.NET .

Hubo muchos cambios importantes en Python 3, entre ellos el cambio a Unicode para todo el texto .

Entonces Python no fue diseñado desde cero para Unicode, pero Python 3 sí.

No sé hasta dónde llega esto en otros lenguajes, pero lo divertido de C # es que no solo el tiempo de ejecución (la clase string , etc.) es unicode consciente, pero Unicode es totalmente compatible con la fuente:

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

El Lenguaje de programación Go es compatible con Unicode y funciona con UTF-8.

Realmente es difícil diseñar soporte Unicode para el futuro, en un lenguaje de programación desde el principio.

Java es uno de los lenguajes que tenía esto diseñado en la especificación del lenguaje. Sin embargo, el soporte Unicode en v1.0 de Java es diferente desde v5 y v6 del Java SDK. Esto se debe principalmente a la versión de Unicode que tenía en cuenta la especificación de idioma, cuando el idioma se diseñó originalmente. Java intenta hacer un seguimiento de los cambios en el estándar Unicode con cada versión principal.

Las primeras implementaciones de JLS podrían reclamar la compatibilidad con Unicode, principalmente porque el propio Unicode admitía 65536 caracteres (v1.0 de Java admitía Unicode 1.1 y Java v1.4 admitía Unicode 3.0) que era compatible con el espacio de almacenamiento de 16 bits ocupado arriba por personajes. Eso cambió con Unicode 3.1: es un estándar en evolución, generalmente con más caracteres agregados en cada versión. Los caracteres agregados más adelante en 3.1 se llamaron caracteres complementarios . El soporte para caracteres suplementarios se agregó en Java 5 a través de JSR-204 ; Java 5 y 6 admiten Unicode 4.0.

Por lo tanto, no se sorprenda si diferentes lenguajes de programación implementan el soporte Unicode de manera diferente.

Por otro lado, PHP (!!) y Ruby no tenían soporte Unicode incorporado durante el inicio.

PS: El soporte para v5.1 de Unicode se realizará en Java 7 .

Java y los lenguajes .NET, como han señalado otros comentaristas, aunque las cadenas de Java son UTF-16 en lugar de UCS o UTF-8. (En ese momento, ¡parecía una idea sensata! Ahora, claramente, UTF-8 o UCS serían mejores). Y Python 3 es realmente un lenguaje diferente e incompatible de Python 1.xy 2.x, por lo que también califica.

Los lenguajes de Plan9 alrededor de 1992 fueron probablemente los primeros en hacer esto: su dialecto de C, rc , Alef, mk , ACID, etc., todos eran Unicode -Habilitado. Adoptaron el enfoque muy simple de que cualquier cosa que no fuera ASCII era un carácter identificador. Vea su artículo de 1993 en adelante el tema. (Este es el proyecto donde se inventó UTF-8, lo que significaba que podían hacerlo de una manera bastante compatible, en particular sin incluir binario versus texto en todos sus programas).

Otros lenguajes que admiten identificadores no ASCII incluyen PHP actual.

Perl & nbsp; 6 tiene soporte completo de Unicode desde cero.
(Con el Rakudo & nbsp; Perl & nbsp; 6 compilador siendo la primera implementación)

Descripción general

Operadores Unicode

Las cadenas, las expresiones regulares y las gramáticas funcionan todas basadas en grafemas, incluso para aquellas combinaciones de puntos de código para las que no hay una representación compuesta (se genera un código artificial de representación compuesto sobre la marcha para esos casos).

Existe una codificación especial para manejar datos de codificación desconocida '' utf8-c8 '': esto asume utf-8 cuando es posible, pero crea puntos de código artificiales para secuencias no codificables, lo que les permite hacer un viaje de ida y vuelta si es necesario.

A veces, una característica que se incluyó en un idioma cuando se diseñó por primera vez no siempre es la mejor.

Los idiomas han cambiado con el tiempo y muchos se han hinchado con funciones adicionales, aunque no necesariamente se mantienen actualizados con las funciones que incluyeron por primera vez.

Así que simplemente descarto la idea de que no necesariamente debe descartar los idiomas que han agregado recientemente Unicode. Tendrán la ventaja de agregar Unicode a una herramienta de desarrollo ya madura y tener la oportunidad de hacerlo bien la primera vez.

Con eso en mente, quiero asegurarme de que Delphi esté incluido aquí, como una de sus respuestas. Embarcadero agregó Unicode en su versión Delphi 2009 e hizo un trabajo excelente. Fue suficiente para pedirme finalmente que actualizara el Delphi 4 que había estado usando durante 10 años.

Java usa caracteres del juego de caracteres Unicode.

idiomas java y .net

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top