Un scientifique sort un nouveau langage de programmation en arabe
Pour démystifier l'art de coder
Le 2013-01-28 14:51:17, par Hinault Romaric, Responsable .NET
Ramsey Nasser, un scientifique du laboratoire de technologie d’Eyebeam à New York, vient de présenter un nouveau langage de programmation basé sur l’arabe, lors d’un entretien avec le magazine « Animal New York ».
Historiquement, l’ordinateur a été construit autour du latin comme jeu de caractères. Les langages de programmation, les bibliothèques et API sont dans leur majorité construits avec des commandes basées sur l’anglais.
La langue devient ainsi un frein pour l’apprentissage de la programmation pour les personnes dont la langue maternelle ne repose pas sur le latin, un ensemble de symboles incompréhensibles pour ceux-ci.
Nasser estime par exemple qu’il est souvent plus judicieux d’apprendre l’anglais avant d’apprendre à coder. Pourtant, « la programmation et le calcul sont des choses auxquelles tout le monde doit accéder », a-t-il déclaré. « Si nous voulons vraiment rendre la programmation accessible et l’enseigner dans le monde, nous devons être conscients de ce que sont les préjugés culturels et de ce que cela signifie pour quelqu’un qui n’utilise pas ces langues ».
C’est dans cette optique que Nasser créa قلب, (qui se traduit littéralement par cœur) un langage de programmation entièrement fonctionnel, basé sur l’écriture de l’arabe, qui s’inspire de Lisp.
Le langage a déjà été utilisé par celui-ci pour mettre en œuvre plusieurs algorithmes et quelques programmes, comme le programme qui calcule la suite de Fibonacci ou encore le « Jeu de la vie » du mathématicien britannique John Horton Conway.
Le langage souffre certainement de plusieurs manquements et pourrait lentement évoluer. Mais il est important d’apprécier cette initiative qui vise à démystifier l’art de la programmation pour les autres à travers le monde.
Source : Animal New York
Et vous ?
Que pensez-vous de ce langage ?
Historiquement, l’ordinateur a été construit autour du latin comme jeu de caractères. Les langages de programmation, les bibliothèques et API sont dans leur majorité construits avec des commandes basées sur l’anglais.
La langue devient ainsi un frein pour l’apprentissage de la programmation pour les personnes dont la langue maternelle ne repose pas sur le latin, un ensemble de symboles incompréhensibles pour ceux-ci.
Nasser estime par exemple qu’il est souvent plus judicieux d’apprendre l’anglais avant d’apprendre à coder. Pourtant, « la programmation et le calcul sont des choses auxquelles tout le monde doit accéder », a-t-il déclaré. « Si nous voulons vraiment rendre la programmation accessible et l’enseigner dans le monde, nous devons être conscients de ce que sont les préjugés culturels et de ce que cela signifie pour quelqu’un qui n’utilise pas ces langues ».
C’est dans cette optique que Nasser créa قلب, (qui se traduit littéralement par cœur) un langage de programmation entièrement fonctionnel, basé sur l’écriture de l’arabe, qui s’inspire de Lisp.
Le langage a déjà été utilisé par celui-ci pour mettre en œuvre plusieurs algorithmes et quelques programmes, comme le programme qui calcule la suite de Fibonacci ou encore le « Jeu de la vie » du mathématicien britannique John Horton Conway.
Le langage souffre certainement de plusieurs manquements et pourrait lentement évoluer. Mais il est important d’apprécier cette initiative qui vise à démystifier l’art de la programmation pour les autres à travers le monde.
Source : Animal New York
Et vous ?
-
gangsoleilModérateurJe suis partage... D'un cote, pourquoi pas : il est certain que l'anglais est un frein pour beaucoup de monde, notamment pour la documentation. En ce sens, un langage dans sa langue maternel peut avoir un interet.
D'un autre cote, je suis partisan de la haute compatibilite en informatique, c'est a dire l'utilisation de l'ASCII standard : pas d'accent dans les sources, code en anglais strict (commentaires, noms de variable, ...)
Et donc de ce point de vue la, je crains que ce langage n'apporte que de l'incompatibilite...le 28/01/2013 à 15:22 -
wirenthMembre avertiA priori c'est quand même un langage à but pédagogique, qui n'est pas destiné à être utilisé en production.
Ce que je vois, c'est que quand au lycée un utilisateur d'une langue à caractères latins prend un cours d'introduction à la programmation, il a pas à apprendre un nouvel alphabet et peu se concentrer sur la logique. Par contre, un Russe, un Chinois ou un Saoudien, il faut qu'il ait une sacrée volonté pour persévérer.
Si tous les langages de programmation était en cyrillique, vous croyez que vous auriez tous pris la peine d'apprendre cet alphabet et quelques mots de russe avant même de savoir si vous allez aimer la programmation, ou vous auriez abandonné rapidement et trouvé une autre vocation ?
Si grâce à ce langage des jeunes de pays arabophones décident d'apprendre la programmation, je vois pas ce que ça a de gênant.le 28/01/2013 à 17:01 -
CHboxMembre confirméJe suis plutôt d'accord sur cet argument, mais pour le reste il faut quand même bien voir que là on ne parle pas seulement d'une langue étrangère mais d'un alphabet différent, difficile de comprendre comment une personne habituée à un alphabet totalement différent peut gérer cet apprentissage.
C'est paradoxale car il créer ce langage pour "ouvrir" l'informatique en le cloisonnant du reste d'une certaine manière, peut-on dire que c'est bénéfique ou non je ne m'avancerait pas, peut-être que le développement d'un éditeur de code qui permettrait de rapidement "traduire" serait plus adapté en effet.
Edit : l'intérêt en revanche, tel que je le vois, c'est de permettre aux étranger d'apprendre d'abord les logiques de programmation via ce genre de langage, approfondir assez pour bien voir le métier, et ensuite l'anglais lorsqu'ils s'estimeront prêt à passer à des langages plus utilisés, je pense que l'objectif est bien là.le 28/01/2013 à 15:47 -
CHboxMembre confirméPrend l'exemple en te plaçant de l'autre côté, tu veux apprendre un métier mais pour le comprendre tu dois savoir lire du Japonais, pas du Japonais de fou mais comprendre quelques mots (et je dis bien comprendre, pas avoir 6 gribouillis sur un papier avec toi et être perdu à la moindre variation), forcément tu va devoir apprendre l'alphabet, partir de la base car c'est totalement différent, et seulement quand tu saura faire ça tu pourra commencer à pratiquer les bases du métier, ce serait plutôt frustrant voir décourageant de commencer avec une telle barrière non?le 28/01/2013 à 15:59
-
Julien BodinMembre éclairéSimplifier pour ceux qui partagent le même alphabet oui.
On peut s'estimer heureux que le langage de référence pour l'IT ne soit pas le chinois sinon en plus d'apprendre à programmer on aurait dû apprendre de nouveaux signes qui n'ont rien à voir avec notre alphabet, c'est ce que doivent faire aujourd'hui tout ceux qui ne partagent pas l'alphabet latin.le 28/01/2013 à 16:02 -
stailerMembre chevronnéQue pensez-vous de ce langage ?
Ok, je sors...le 28/01/2013 à 15:12 -
grunkModérateurJe suis pas pour, simplement parce que sortit du contexte de ce langage le programmeur va se retrouver perdu.
Sans compté qu'aucun intervenant extérieur non arabophone ne pourra intervenir sur un projet utilisant ce langage.
Je vois de plus en plus des gens dire :
A non mais la doc elle est en anglais, donnez moi un lien en [placer ici la langue maternelle de votre choix]le 28/01/2013 à 15:39 -
ThornaMembre éprouvéHé oui, même au 21ème sicle, on peut programmer comme en 1950 : c'est d'ailleurs pour ça qu'on a inventé l'Unicode, code standard et universel, et la possibilité d'utiliser tous ces signes alphabétiques...
Reste à savoir combien de personnes non francophones reprennent un code écrit par un francophone pour une boite francophone... Ou pour combien de boites islandaises, cambodgiennes ou indonésiennes par exemple ce programmeur arabophone particulier va travailler ensuite...
On ne parle pas de mots, ni de pays, mais d'alphabet ! Ca te plairait, toi, pour ta programmation journalière, que l'histoire de l'informatique ait commencé en arabe et que tous les langages s'écrivent de droite à gauche avec un alphabet que tu ne connais pas ?
Quand tu es arabe ? Ou chinois ? Ou russe ? Pas de dico du tout, exactement comme toi quand tu programmes en français (ou éventuellement en anglais).
Ah, ouf, enfin quelques-uns qui ont compris !le 28/01/2013 à 18:14 -
gangsoleilModérateurIndependamment de ce langage, c'est deja le cas : on assiste aujourd'hui a une multiplication des langages de programmation dans tous les domaines, la plupart du temps sans avoir un but precis, juste pour que l'editeur du langage puisse eventuellement grapiller des parts de marche, au cas ou ca rapporterait de l'argent.
Ici, certes ca fait un langage de plus, mais au moins il y a un interet flagrant, c'est de pouvoir apprendre un langage aux plus jeunes, dans leur langue maternelle.
Lorsque KPL etait encore gratuit (Kids Programming Language -- un langage destine aux plus jeunes), je m'etais renseigne pour savoir pourquoi il etait uniquement en anglais, et la reponse etait double :
1/ Il n'y a pas tant de mots-clefs a retenir
2/ Si vous voulez, vous pouvez le faire vous-meme
Or l'argument 1 est vrai pour un adulte, mais j'ai essaye avec mon neveu, et le cote "apprendre des mots-clefs par coeur" ne l'a pas du tout encourrage dans l'apprentissage de la programmation.
[edit]
Pour le cote drole, le nom de ce langage pose soucis au forum pour afficher le nombre de pages de la discussion
[/edit]le 29/01/2013 à 14:19 -
TryphMembre éméritel'anglais dés le CE2, pour ce que j'en ai vu avec mes petit(e)s frères (soeurs), c'est uniquement à l'oral et surtout, c'est pas systématique.
dans mon cas, l'anglais ça a été à partir de la 6e.
le début de l'apprentissage de la programmation en fin de lycée, c'est une vision purement "éducation nationale française".
y a des gamins qui s'intéressent à la programmation bien avant la fin du lycée.
dans mon cas, j'ai eu la "chance" d'avoir un instituteur au CM1 qui a fait découvrir à ma classe de vague rudiments de programmation avec un langage traduit en français qui permettait de déplacer une "tortue" pour tracer des dessins : le LOGO
je doute pas que j'aurais eu plus de mal si j'avais du écrire des "TURNLEFT" plutôt que des "TOURNEGAUCHE" alors que je ne connaissais pas le sens de "the end" à la fin des dessins animés.le 29/01/2013 à 14:47