tipos tiene significado que programacion lenguaje interpretes funcion fases ejemplos compiladores compilador compiler-construction programming-languages

compiler construction - tiene - ¿Existen compiladores con versiones localizadas de lenguajes de programación?



que funcion tiene un compilador en un lenguaje de programacion (17)

¡No! Nunca use la "localización" para sus fuentes. El inglés es un estándar de facto para la programación y ayuda mucho y hace que este mundo sea un poco mejor.

El código debe ser portátil y comprensible para todos (cuando sea posible), la localización anularía esta posibilidad.

Hablo ruso, italiano y un poco de inglés, pero he usado cualquier cosa menos el inglés en mi trabajo.

A menudo me he preguntado por qué los programadores que no hablan inglés se ven obligados a usar un lenguaje diferente cuando programan cuando parece ser tan fácil ofrecer un IDE que podría reemplazar las palabras clave con versiones localizadas. ¿Por qué los alemanes no pueden usar un ciclo "während..macht"?

Los programadores en Japón, Alemania, Francia, España y Botswana solo hacen un uso extensivo de macros / definir declaraciones para hacer la vida más tolerable o simplemente se acostumbran a la importancia funcional de la impresión, si, entonces, mientras, do, begin, end , var, doble, función, etc.?

Tal vez el mayor uso de frameworks (J2EE / .NET) lo haga más complicado, pero aún así parece que vale la pena. Por otro lado, si Klingon se convirtiera en el lenguaje de programación de facto en los Estados Unidos, probablemente me arrepentiría de haberlo sugerido.


En la mayoría de los lenguajes de programación, las palabras clave están reservadas, por lo que no se pueden usar para nombres de variables, etc.

Ahora suponga que las palabras clave cambiaron cada vez que cambió la cultura: el código escrito en una cultura no podría transferirse a otra sin cambiar los identificadores. Ick. Además, cuando alguien copiaba su código en un foro de preguntas como este, ya no estaríamos hablando el mismo idioma, por así decirlo.

Hay claras ventajas de tener solo una cultura en el lenguaje de programación en sí ...


En la versión de Word antigua (realmente antigua), escribirías las macros en WordBasic. El WordBasic fue localizado.


Este tipo de cosas no es exclusivo de los lenguajes de computadora. Todas las palabras de control para la música están en italiano (andante, allegro, crescendo, etc.). Esto ha funcionado bien durante mucho tiempo.

Además, permite que los programas se compartan más fácilmente. Supongamos que está tratando de integrar una función de un programador finlandés en un módulo en francés, y desea enviarlo para una mayor integración a su colega australiano.


Esto es lo mismo que el control del tráfico aéreo. Ha sido bastante estandarizado en inglés. Si bien eso puede hacer que volar sea un poco más difícil si su idioma nativo no es el inglés, no es demasiado difícil aprender el subconjunto específico de inglés necesario para hacer el trabajo ... pero ¿podría imaginarse qué pasaría si los pilotos pudieran simplemente intentarlo? hablan el idioma con el que se sentían más cómodos con los controladores ... ¿y los controladores podían responder en el idioma que más les gustaba? Desde luego, ya no volaría más internacionalmente :)


Hay un lenguaje de desarrollo en Francia que se llama WinDev, donde todo el código está completamente traducido al francés.


La versión francesa (y, IIRC, alemana y otras) de Office tiene una vez una versión localizada de VBA.

Lo lograron, ¡porque era una muy mala idea! Está bien para usuarios ocasionales, que hacen uso ocasional de macros, pero tan pronto como comienzas a buscar información en Internet, deseas compartir tu código, etc., es una pesadilla. Por no hablar de abrir una hoja de trabajo francesa en un Excel español ... (aunque supongo que guardaron bytecode, no literales, por lo que dicen ejecutar una macro alemana copiada en algún lugar de un Excel francés).

VB (y algunos otros lenguajes, como Lua) permiten usar identificadores con acentos, etc. Recuerdo que lo usé intensamente hace mucho tiempo. Parece extraño ahora, y de nuevo, hace muy difícil compartir el código.
Del mismo modo, me siento incómodo cuando veo código con comentarios en español o chino ...

Para el registro, en el momento de las computadoras de 8 bits, una computadora francesa (TO8) tiene una versión francesa de Basic: en lugar de WHILE ... WEND, tuvimos FAIRE ... JUSQUA (o algo similar).

De todos modos, estos lenguajes de computadora localizados son bastante escasos ahora ... Para bien o para mal, el inglés es la lengua franca de la informática. Al menos no es el idioma más difícil de aprender. Y el vocabulario de la mayoría de los idiomas (al menos el conjunto de palabras clave) es bastante limitado.

El único problema es cuando tratamos de enseñar programación a jóvenes que no saben inglés, pero aprenden rápido.


No, y realmente no puede haberlo. Si toma un compilador de C, por ejemplo, y localiza las palabras clave en un idioma diferente, tendrá un lenguaje de programación perfectamente viable pero, por definición, ya no es un compilador de C.

C puede tener palabras clave como if y for cuales obviamente derivan del inglés, pero no son palabras clave en inglés, son palabras clave en C.

Dicho esto, a menudo me he preguntado por qué no hemos visto lenguajes de programación basados ​​en otros lenguajes humanos. ¿No son tan conocidos?


Me sorprendería que no hubiera un clon localizado en chino de la versión abierta de varios idiomas. Especialmente gcc / g ++. Son lo suficientemente grandes como para tener su propio ecosistema a su alrededor y realmente no tendría mucha o ninguna colisión entre los identificadores chinos e ingleses.

Teniendo en cuenta que las lenguas escritas chinas difieren tan fundamentalmente de las lenguas occidentales, me sorprenderá aún más si no hay un idioma chino puro sin equivalente occidental que aproveche esas diferencias.


No es un lenguaje de programación per se, pero Microsoft Excel es conocido por la localización de sus nombres de funciones. Afortunadamente, abrir una hoja de Excel en una versión de idioma diferente no rompe sus fórmulas a medida que se traducen.


Cuando primero hice Applescript que estaba localizado, no sé si todavía es cierto.


Cuando era niño, había una versión del lenguaje de programación de Logo (interpretado) en hebreo. Recuerdo vagamente un faux-BASIC en el mismo idioma.

Sin embargo, fueron horribles de usar porque las letras se escriben en RTL y los números y símbolos se escribieron en LTR, y las antiguas PC / manzanas basadas en ASCII no podían manejar ese tipo de golpes.


En algunos casos, las palabras clave ni siquiera son en inglés (aunque pueden parecerse vagamente a las palabras en inglés): car , cdr y cons de Lisp; elsif en Perl; printf , fgets , sscanf , y muchos más de C. Creo que la mayoría de los idiomas tienen al menos algunas palabras clave que no están localizadas, incluso para los hablantes de inglés.

Las palabras clave pertenecen al lenguaje de programación, no al lenguaje del programador (hablado).


Los brasileños que crearon Lua usaron palabras clave en inglés como if y while. Los franceses que trabajaron en ML también usaron palabras clave en inglés. Stroustrup, Guido y Linus provienen de países que no son ingleses (aunque creo que todos aprendieron inglés a temprana edad). Y no puedes olvidar el trabajo de Matz sobre Ruby.

No quiero ser esnob, pero el inglés es lo más parecido que tienen los programadores a Lingua Franca.


¡Ojalá haya visto un programa escrito en MS Visual Basic 5 o 6 con palabras clave rusas!



¡Encontré uno!

Lexico.NET : Lexico es un lenguaje de programación educativo orientado a objetos en español basado en el .NET Framework.