Ramon

Ramon
Ramon Gallart

diumenge, 17 de maig del 2020

Primer llenguatge de programació en idioma xinès clàssic.

Dsiponible el primer llenguatge de programació del món basat en el idioma xinès clàssic. Els primers voluntaris ja han escrit desenes de programes, com un basat en un antic algorisme de la sort xinès .



Una representació d'un programa escrit en wenyan-lang per dibuixar el conjunt Mandelbrot.
Font: Lingdong Huang.  Una representació d'un programa escrit en wenyan-lang per dibuixar el conjunt Mandelbrot

El desenvolupador del nou llenguatge, Lingdong Huang, prèviament havia dissenyat una pintura de paisatges xinesos generada per ordinador. També va ajudar a crear la primera - fins ara - única òpera xinesa generada per la Intel·ligència Artificial (AI) . Es va graduar amb llicenciatura en informàtica i art a la Carnegie Mellon University al desembre.

Després de presentar la idea del nou llenguatge, el wenyan-lang , ara farà un any, Huang va acabar el nucli del llenguatge durant el seu últim mes a l'escola. Inclou un renderitzador que pot mostrar un programa de forma que s’assembli a les pàgines de textos antics xinesos.


Lingdong Huang

Lingdong Huang

Huang  té dotzenes de programes escrits en wenyan-lang, molts d'ells són implementacions d'algorismes matemàtics que es troben en antics llibres de matemàtiques xineses. Per exemple, pi_liuhui.wy recrea com la matemàtica del segle III dC Liu Hui, va calcular el nombre pi. Crt.wy és el teorema de la resta xinesa ,que va ser descrit als llibres xinesos abans del descobriment de Pascal.


Una representació d'un programa escrit en wenyan-lang per a l'algorisme de la fortuna en el I-Ching.
Font: Lingdong Huang.Una representació del programa divination.wy escrit en wenyan-lang
Un dels programes preferits de Huang en wenyan-lang, és divination.wy. És l'algorisme de la fortuna descrit al I-Ching, el més antic dels clàssics xinesos. Wenyan-lang utilitza tant caràcters tradicionals xinesos com gramàtica xinesa clàssica. Un dels reptes del desenvolupament de la llengua era com el xinès clàssic no utilitza espais per dividir frases en paraules, de manera que la forma de dividir una frase és una tasca del lector i no de l'escriptor. Per exemple, si els lectors en anglès escriuen "pancakebatter", haurien de confiar en els seus coneixements previs per desxifrar-ho com a "pancake batter" i no "pan cake batter".

Per superar aquest repte, Huang assenyala que els llenguatges de programació només tenen una quantitat fixada de paraules clau. Per tant, wenyan-lang passa de la paraula clau més llarga a la paraula clau més curta de cada programa per desxifrar el que el programador vol.

A més de co-autoritzar el codi, ha de revisar el codi d'altres persones, avaluar detingudament tots els suggeriments i decidir si de veritat són funcions valuoses per a l'idioma o escriure respostes amigables per explicar per què no ho creu, en cas contrari.


Wenyan-lang Finestra de programació i JavaScript corresponent
Font: Lingdong Huang. Finestra de programació de Wenyan-lang i JavaScript corresponent.

Actualment, els col·laboradors de wenyan-lang treballen en compiladors per a Python, Ruby, JavaScript, C ++ i Java, biblioteques per a gràfics i la interfície gràfica d'usuari (GUI), a més d' un lloc on la gent pot autoritzar i compartir codi. El més important, es buscar maneres de construir una comunitat al voltant del llenguatge, això, podria esdevenir com a crític per a la seva continuïtat. Tot i l'entusiasme inicial, cal mantenir  el llenguatge viu per això cal que hi hagi una comunitat d'usuaris.

A més, Huang treballa en una guia introductòria de la programació en wenyan-lang que està escrita en xinès clàssic. Està fet al voltant del 40 per cent El públic objectiu del llibre es per si hi ha algú que no tingui experiència prèvia amb la programació. Tot i així, hauré de provar-ho amb l'esmentat públic per assegurar-me, ja que crec que algunes idees que són naturals per a mi potser no són òbvies. algú nou a la programació. "


Font: IEEE Spectrum