Programmez en orienté objet et en français avec Linotte

L'auteur de ce sujet a trouvé une solution à son problème.
Auteur du sujet

Linotte, c'est un langage libre de type L4G (Langage de 4e génération) qui permet d'apprendre facilement la programmation, comme sa devise l'indique : "Tu sais lire un livre, alors tu peux écrire un programme informatique".

En guise d'IDE, nous avons un atelier de programmation, interface qui contient quelques outils (dont le verbier qui donne accès à une liste de commandes) et quelques scripts à titre d'exemples:

Atelier de programmation Linotte

Site officiel de Linotte

Documentation Linotte

Après avoir testé rapidement, je trouve qu'utiliser la langue française de manière élémentaire (pour ne pas dire "sommaire") dans un script, c'est très déroutant. Mais il faut imaginer qu'un anglophone voit les choses de cette manière quand il programme avec les langages habituels qui sont en anglais. Le langage à l'air assez complet et relativement puissant. Une porte d'entrée accessible à toute personne ayant peu d'expérience en programmation.

Édité par Coyote

+1 -3

Le soucis avec le francais, c'est qu'il y a toute la problématique des accents qui sont une bonne spécificité du langage et qu'on ne retrouve pas sur d'autres claviers.

Et puis c'est vachement trop verbeux.

Édité par Davidbrcz

+5 -0

Si tu veux initier quelqu'un à la programmation, sans prise de tête, y'a déjà le Python, non ?

Certes, le Python est en anglais, mais les quelques "mots-clés" qu'il faut savoir ne sont franchement pas compliqués …

Le soucis avec le francais, c'est qu'il y a toute la problématique des accents qui sont une bonne spécificité du langage et qu'on ne retrouve pas sur d'autres claviers.

Davidbrcz

Le problème ne se pose pas, je ne vois pas pourquoi les non-francophones iraient utiliser un langage de programmation en français.

Édité par DigitalSuricate

+1 -2

Pourquoi des Francophones iraient utiliser des langages anglophones ?

Parce que tout le monde le fait ?

Vayel

Ca c'est le constat, pas une explication.

Pourquoi personne n'utilise de langage avec des sinogrammes ou de caractères Hindi ? Car c'est pas accessible.

Si tout le monde utilise des langages avec un alphabet européen (pas d'autre terme en tête), c'est car la jeu de caractère est réduit au minimum pour être utilisable facilement par le plus grand nombre.

+1 -2

Pourquoi tout le monde utilise un langage anglophone ?
Il fallait forcément, à un moment donnée, une unification. Les bases de l'informatique ont principalement été posées aux Etats-Unis, l'anglais est resté, et ça arrange beaucoup de monde.

+0 -2

Pourquoi tout le monde utilise un langage anglophone ?
Il fallait forcément, à un moment donnée, une unification. Les bases de l'informatique ont principalement été posées aux Etats-Unis, l'anglais est resté, et ça arrange beaucoup de monde.

Emeric

Le côté hégémonie de l'anglais en informatique tient en effet de l'histoire. Mais aussi car il s'exporte bien.

Je suis sûr que si les créateurs de l'informatique eurent parlé une langage avec des spécificités orthographiques propres (accents, lettre spéciales), on aurait vu l'émergence de langage de programmation dans d'autres langues, qui se seraient imposé AMA.

On pourrait imaginer un langage de programmation totalement distant de la langue de ses créateurs.

Édité par Davidbrcz

+0 -0

N'oubliez pas que si on le souhaite on peut programmer en "franglais", rien ne nous empêche d'appeler nos variables jean_pascale et nos classes Baguette. Je crois même q'en PHP6, avec le support de l'unicode, on peut nommer nos variables en chinois, à vérifier …

Édité par DigitalSuricate

+1 -3

Je ne sais pas si cela s'exporte bien comme le dit Davidbrcz, mais l'anglais a un avantage historique: son alphabet ne comporte aucun caractere particulier. C'est historique comme avantage car a l'epoque coder un caractere sur plusieurs octets c'etait juste impensable.

Aujourd'hui avec le support de l'UTF8 on a a la fois le beurre et l'argent du beurre avec un stockage minimal et un surcout pour les caracteres exotiques qui est negligeable.

Je ne pense pas comme David que l'informatique en anglais s'exporte 'bien', je dirais plutot que la synergie en informatique appliquee est tres lente, aussi lente que dans le reste de l'industrie. C'est a dire que les programmes Fortran ou COBOL d'epoque sont encore utilise aujourd'hui. Des machines IBM connaissent des uptime de 25 ans (premiere mise en route jusqu'a la poubelle). De fait, il y a encore toute cet heritage qui pese egalement sur le present. C'est un petit peu comme dans l'industrie de la propulsion et des machine-outils ou beaucoup de documents sont en allemands historiquement et continue de l'etre pour certaines branches parce que les machine-outils produites sont toujours en activite.

Il est toujours possible que dans 100 ans une autre langue perce comme moyen d'unification de certains domaines techniques ou scientifiques. Il suffit par exemple d'une guerre a large echelle pour changer la donne geo-politique et reconfigurer le paysage des langues vehiculaires.
Sans aller jusque la ou pire, le souhaiter, il y a beaucoup de travaux sur les mefaits de l'anglais comme langue vehiculaire, non pas l'anglais en lui meme, mais veritablement et insecablement "l'anglais comme langue vehiculaire" (precisions pour ne pas me faire taxer d'anglophobe, alors que c'est ma langue et de travail et de tous les jours). Citons Claude Hagege par exemple. On sort du cadre de l'informatique pur mais franchement, si l'on voulait satisfaire tout le monde et eviter les influences de cultures qui ne vont que dans un sens et cree des lors de la frustration ou un sentiment d'hegemonie ou domination, il serait tout a fait possible d'utiliser une langue vehiculaire artificielle, simple et efficace, avec un alphabet possiblement aussi si ce n'est plus restreint que l'anglais. Possiblement pense pour une verbosite reduite dans les domaines ou elle s'appliquerait.

Maintenant, mon avis sur la tentative d'avoir des langages de programmation en francais (ou autre) est que si c'est pour retomber dans les travers de l'anglais comme langue vehiculaire, c'est inutile.

Au passage, je viens de me poser une question. Ne serait-il pas techniquement possible de traduire le C++ par exemple ou tout langage compile ? Une passe supplemetaire du compilateur, en amont, ferait la bijection entre la syntaxe francaise et la syntaxe anglaise. Ce ne serait possible simplement que dans les cas ou il existe une telle bijection (sinon il faudrait modifier la maniere de parser selon la grammaire, ce qui peut devenir difficile ou impraticable).

Cela pourrait faire un petit exercice sympa pour l'utilisation d'outils du compilateur LLVM par exemple.

Édité par KFC

+2 -0
Staff

Au passage, je viens de me poser une question. Ne serait-il pas techniquement possible de traduire le C++ par exemple ou tout langage compile ?

Quelqu'un l'a fait, mais plus pour le fun qu'autre chose : standard cocorico !

Hier, dans le parc, j'ai vu une petite vieille entourée de dinosaures aviens. Je donne pas cher de sa peau.

+1 -0

Au passage, je viens de me poser une question. Ne serait-il pas techniquement possible de traduire le C++ par exemple ou tout langage compile ? Une passe supplemetaire du compilateur, en amont, ferait la bijection entre la syntaxe francaise et la syntaxe anglaise. Ce ne serait possible simplement que dans les cas ou il existe une telle bijection (sinon il faudrait modifier la maniere de parser selon la grammaire, ce qui peut devenir difficile ou impraticable).

Cela pourrait faire un petit exercice sympa pour l'utilisation d'outils du compilateur LLVM par exemple.

Höd

Traduire quelques dizaines de mots-clés sur un source, c'est trivial (il n'est même pas question de syntaxe, mais uniquement de lexique). Mais honnêtement, ce n'est pas remplacer les if par des si que j'appelle programmer en français. Le choix d'une langue se ressent aussi dans le choix des identifiants et dans les commentaires. Une éventuelle traduction devrait donc également changer l'encodage du fichier et s'assurer que les identifiants dans le langage cible soit corrects et que l'alpha-équivalence soit respectée. Il ne s'agit plus d'une bijection dans ce cas là (mais la traduction reste possible, pourvu que le but soit ensuite de compiler).

Édité par Bibibye

Staff

mais l'anglais a un avantage historique: son alphabet ne comporte aucun caractere particulier.

Ou alors l'explication est à prendre dans l'autre sens. Les "caractères spéciaux" (je déteste ce terme) de l'informatique sont spéciaux par rapport au standard prédominant d'origine, l'ASCII. Qui servait à coder l'anglais américain. Et qui donc, par définition, ne contenait que les caractères présents dans l'alphabet Anglais.

On peut parier que si des francophones avaient développé les premiers systèmes informatiques au lieu des anglophones (avec donc l'hypothèse du français comme langue dominante), des caractères comme é ou ç ne seraient pas des "caractères spéciaux", au contraire de č ou š

et un surcout pour les caracteres exotiques qui est negligeable.

Tout dépend de ta définition de "caractères exotiques" et de ton application en fait :

  • C'est vrai pour toutes les langues dérivées de l'alphabet latin, puisque la plupart des caractères utilisés sont présents dans ASCII (point de code inférieur à U+007F) et donc tiennent sur 1 octet.
  • C'est faux pour la plupart des autres langues à alphabet / nombre réduit de caractères (grec, cyrillique, arménien, hébreu, arabe, …) dont les codages spécifiques utilisent 1 octet par caractère mais qui consomment 2 octets par caractères au moins avec UTF-8
  • C'est encore pire pour les langues à alphasyllabaire ou pire à idéogrammes (points de code supérieurs à U+0800 pour lesquels chaque caractère prends de 3 à 6 octets, contre 2 sur UTF-16 ou UCS. On parle quand même de plus de la moitié de la population mondiale là.

Alors on me dira que ça reste du texte et que le surcoût est acceptable si ça évite de se prendre la tête ; mais dans le cas des réseaux (sites web, applications mobiles), la question vaut la peine d'être posée. Une étude rapide empirique sur les sites des grands quotidiens asiatiques laisse entendre que les encodages spécifiques ont encore une longue vie devant eux…

Ou alors l'explication est à prendre dans l'autre sens. Les "caractères spéciaux" (je déteste ce terme) de l'informatique sont spéciaux par rapport au standard prédominant d'origine, l'ASCII

Ils sont aussi et surtout spéciaux par leur spécificité à la langue. Si on cherche la langue dont l'alphabet est le plus proche de l'intersection des alphabets des langues basées sur l'alphabet latin, ca doit être l'anglais.

L'alphabet des autres langues européennes contient (en général à peu de chose prêt) celui l'anglais. C'est donc aussi logique que l'anglais se soit imposé (en plus du poids de l'histoire).

Si le Francais s'était imposé dans l'informatique, alors oui ç ou à n'auraient pas été spéciaux. Alors que ca aurait été le cas des accents de toutes les autres langues. Là au moins pas de distinction. Et c'est logique.

Édité par Davidbrcz

+0 -0
Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte