A primera vista todos los lenguajes de programación pueden resultar igualmente extraños. Pero un nuevo vistazo bastará para comprobar que la mayoría del código tiene en realidad mucho en común con el inglés. Se trata de caracteres ASCII, que a su vez codifican letras del alfabeto latino, basadas originalmente en el inglés.
De esta forma, aunque no se entienda lo que significan las palabras en el contexto del programa, sí se reconoce la mayoría de ellas. Como resultado, la programación se ha ligado principalmente a una sola cultura escrita, la inglesa.
Ante tal tesitura, en un artículo publicado en la revista NewScientist se plantean si la programación puede resultar más difícil de aprender para quienes no hablan inglés, o incluso para aquellos cuya lengua no usa el alfabeto romano. Algo así deben pensar quienes han tratado de poner en marcha en los últimos tiempos unos lenguajes de programación mejor adaptados a su lengua materna.
El último, Ramsey Nasser, ingeniero de software y diseñador en el Centro de Arte y Tecnología Eyebeam en Nueva York. Nasser va más allá en ese debate, al asegurar en su web que el lenguaje de las herramientas de programación actuales lleva consigo “un sesgo cultural que favorece a los que crecen leyendo y escribiendo en inglés”.
Ante esta situación, el equipo de investigación del libanés ha creado قلب (pronunciado "alb", que significa corazón), un lenguaje de programación basado en el alfabeto árabe, con el que además espera atraer a nuevos programadores de los países parlantes de esta lengua, octavo idioma más hablado en el mundo.
De esta forma, aunque no se entienda lo que significan las palabras en el contexto del programa, sí se reconoce la mayoría de ellas. Como resultado, la programación se ha ligado principalmente a una sola cultura escrita, la inglesa.
Ante tal tesitura, en un artículo publicado en la revista NewScientist se plantean si la programación puede resultar más difícil de aprender para quienes no hablan inglés, o incluso para aquellos cuya lengua no usa el alfabeto romano. Algo así deben pensar quienes han tratado de poner en marcha en los últimos tiempos unos lenguajes de programación mejor adaptados a su lengua materna.
El último, Ramsey Nasser, ingeniero de software y diseñador en el Centro de Arte y Tecnología Eyebeam en Nueva York. Nasser va más allá en ese debate, al asegurar en su web que el lenguaje de las herramientas de programación actuales lleva consigo “un sesgo cultural que favorece a los que crecen leyendo y escribiendo en inglés”.
Ante esta situación, el equipo de investigación del libanés ha creado قلب (pronunciado "alb", que significa corazón), un lenguaje de programación basado en el alfabeto árabe, con el que además espera atraer a nuevos programadores de los países parlantes de esta lengua, octavo idioma más hablado en el mundo.
El lenguaje se aparta casi por completo de ASCII. Fuente: Ramsey Nasser
Desafío
Según una entrevista a Nasser publicada en NewScientist, todo empezó cuando era estudiante de Informática en la Universidad Americana de Beirut en el Líbano. “Caí en la cuenta de que todos los lenguajes de programación que he aprendido han sido en inglés”, explica. Por ello, quería iniciar el debate sobre la dependencia de este idioma en la programación moderna.
“Existe tendencia a ver los lenguajes de programación como algo inmutable, pero todo lo contrario. Las herramientas que utilizamos las crean hombres y mujeres, y están cargadas con sus propios supuestos”, añade el informático libanés. Etiquetas que se usan a diario como "appendChild" o "setVolume", son únicamente palabras concadenadas en inglés e introducidas en tarjetas gráficas, navegadores y sistemas operativos.
Su nuevo lenguaje trata de incidir en que se pueden desafiar algunos de esos supuestos. Así, قلب explora y se cuestiona esto presentando un sistema que se aparta casi por completo de ASCII. En esencia, se trata de una traducción de un lenguaje de programación ya existente llamado Scheme, código del tipo funcional desarrollado en la década de los setenta.
Pero además del lenguaje y su interpretación, el proyecto incluye una serie caligráfica, ya que según Nasser los códigos de programación son trabajos estéticos. “Los programadores usamos palabras como feo, tosco, elegante o hermoso cuando hablamos de diferentes lenguajes. Para mí este código es una obra de arte conceptual”, asegura. En ese sentido, los algoritmos tradicionales se implementan en قلب, y el código fuente resultante en árabe se usa como piezas de caligrafía, tratándolos como alta poesía.
Según una entrevista a Nasser publicada en NewScientist, todo empezó cuando era estudiante de Informática en la Universidad Americana de Beirut en el Líbano. “Caí en la cuenta de que todos los lenguajes de programación que he aprendido han sido en inglés”, explica. Por ello, quería iniciar el debate sobre la dependencia de este idioma en la programación moderna.
“Existe tendencia a ver los lenguajes de programación como algo inmutable, pero todo lo contrario. Las herramientas que utilizamos las crean hombres y mujeres, y están cargadas con sus propios supuestos”, añade el informático libanés. Etiquetas que se usan a diario como "appendChild" o "setVolume", son únicamente palabras concadenadas en inglés e introducidas en tarjetas gráficas, navegadores y sistemas operativos.
Su nuevo lenguaje trata de incidir en que se pueden desafiar algunos de esos supuestos. Así, قلب explora y se cuestiona esto presentando un sistema que se aparta casi por completo de ASCII. En esencia, se trata de una traducción de un lenguaje de programación ya existente llamado Scheme, código del tipo funcional desarrollado en la década de los setenta.
Pero además del lenguaje y su interpretación, el proyecto incluye una serie caligráfica, ya que según Nasser los códigos de programación son trabajos estéticos. “Los programadores usamos palabras como feo, tosco, elegante o hermoso cuando hablamos de diferentes lenguajes. Para mí este código es una obra de arte conceptual”, asegura. En ese sentido, los algoritmos tradicionales se implementan en قلب, y el código fuente resultante en árabe se usa como piezas de caligrafía, tratándolos como alta poesía.
El inglés como base
El de Nasser no ha sido el único intento para programar en árabe, pues le preceden Arablan y Ammoria.
Sin embargo, estos lenguajes estaban destinados a ser utilizados como herramientas de ingeniería o educativas, lo cual –a su juicio- es un esfuerzo condenado al fracaso. “Para escribir cualquier código real hay que aprender inglés, y ese es el centro del problema”, admite Nasser en SciDev.Net.
Esto se debe a que la mayoría de los sistemas de software existentes, así como los que están en camino, utilizan el inglés.
Para crear un código verdaderamente árabe habría que reescribir los últimos 40 años de ingeniería de software desde cero en árabe, lo cual resulta imposible. “Y eso significaría excluir a los no hablantes de árabe en lugar de los que no hablan inglés; mover el problema no es la solución”, justifica el informático.
Así, admite que no se puede mantener una experiencia de programación completa en cada lengua natural, pues “habría que traducir todo el software existente y todo lo nuevo, algo insostenible”. Sin embargo, sí lo considera una herramienta útil para inspirar a una nueva generación de programadores.
Y es que hay quien sugiere que enseñar a los niños a programar en su lengua materna puede ayudarles a aprender más rápidamente. Dave Reed, de la Universidad de Creighton en Omaha, Nebraska (EEUU), quien estudia la enseñanza de Informática y Ciencias de la Computación, señala que la investigación ha demostrado que ser capaz de entender los nombres de variables -a pesar de que en realidad sólo sean símbolos matemáticos- puede ayudar a cualquiera a comprender cómo funciona un programa.
Pero para trabajar en el resto del mundo tendrían que cambiar a una corriente principal basada en el inglés en poco tiempo. Pues, aunque pueda generar controversias, en el ámbito de la ciencia y la tecnología “el lenguaje de la cultura dominante es el que se utiliza”. Lo afirma Mosab Ahmad, ingeniero de software en las empresas egipcias Zobad.net y Shaghal.com.
Hasta ahora, solo en China existen diversos lenguajes de programación escritos en su alfabeto para el sistema operativo oficial del país. Sin embargo, “los chinos toman en serio su cultura y hay un enorme mercado local para productos de software fabricados en China, algo que no ocurre en el mundo árabe”, puntualiza Ahmad.
El de Nasser no ha sido el único intento para programar en árabe, pues le preceden Arablan y Ammoria.
Sin embargo, estos lenguajes estaban destinados a ser utilizados como herramientas de ingeniería o educativas, lo cual –a su juicio- es un esfuerzo condenado al fracaso. “Para escribir cualquier código real hay que aprender inglés, y ese es el centro del problema”, admite Nasser en SciDev.Net.
Esto se debe a que la mayoría de los sistemas de software existentes, así como los que están en camino, utilizan el inglés.
Para crear un código verdaderamente árabe habría que reescribir los últimos 40 años de ingeniería de software desde cero en árabe, lo cual resulta imposible. “Y eso significaría excluir a los no hablantes de árabe en lugar de los que no hablan inglés; mover el problema no es la solución”, justifica el informático.
Así, admite que no se puede mantener una experiencia de programación completa en cada lengua natural, pues “habría que traducir todo el software existente y todo lo nuevo, algo insostenible”. Sin embargo, sí lo considera una herramienta útil para inspirar a una nueva generación de programadores.
Y es que hay quien sugiere que enseñar a los niños a programar en su lengua materna puede ayudarles a aprender más rápidamente. Dave Reed, de la Universidad de Creighton en Omaha, Nebraska (EEUU), quien estudia la enseñanza de Informática y Ciencias de la Computación, señala que la investigación ha demostrado que ser capaz de entender los nombres de variables -a pesar de que en realidad sólo sean símbolos matemáticos- puede ayudar a cualquiera a comprender cómo funciona un programa.
Pero para trabajar en el resto del mundo tendrían que cambiar a una corriente principal basada en el inglés en poco tiempo. Pues, aunque pueda generar controversias, en el ámbito de la ciencia y la tecnología “el lenguaje de la cultura dominante es el que se utiliza”. Lo afirma Mosab Ahmad, ingeniero de software en las empresas egipcias Zobad.net y Shaghal.com.
Hasta ahora, solo en China existen diversos lenguajes de programación escritos en su alfabeto para el sistema operativo oficial del país. Sin embargo, “los chinos toman en serio su cultura y hay un enorme mercado local para productos de software fabricados en China, algo que no ocurre en el mundo árabe”, puntualiza Ahmad.