Langages de programmation non basés sur l'anglais - Non-English-based programming languages

Les langages de programmation non basés sur l'anglais sont des langages de programmation qui n'utilisent pas de mots-clés tirés ou inspirés du vocabulaire anglais .

Prévalence des langages de programmation basés en anglais

L'utilisation de la langue anglaise dans l'inspiration pour le choix des éléments, en particulier pour les mots-clés dans les langages de programmation informatique et les bibliothèques de codes, représente une tendance importante dans l'histoire de la conception des langages. Selon la base de données en ligne des langues HOPL, sur les 8 500+ langages de programmation enregistrés, environ 2 400 d'entre eux ont été développés aux États-Unis , 600 au Royaume-Uni , 160 au Canada et 75 en Australie .

Ainsi, plus d'un tiers de tous les langages de programmation ont été développés dans des pays où l'anglais est la langue principale. Cela ne prend pas en compte la part d'utilisation de chaque langage de programmation, les situations où un langage a été développé dans un pays non anglophone mais utilisait l'anglais pour attirer un public international (voir le cas de Python des Pays - Bas , Ruby du Japon , et Lua du Brésil ), et des situations où il était basé sur un autre langage de programmation qui utilisait l'anglais.

Langages de programmation internationaux

Le concept de langages de programmation de style international a été inspiré par les travaux des informaticiens britanniques Christopher Strachey , Peter Landin et d'autres. Il représente une classe de langages dont la lignée des langages algorithmiques ALGOL a été exemplaire.

ALGOL 68

Le document standard d' ALGOL 68 a été publié dans de nombreuses langues naturelles . La norme a permis l'internationalisation du langage de programmation. Le 20 Décembre 1968, le « Rapport final » (MR 101) a été adopté par le Groupe de travail, puis par la suite approuvé par l'Assemblée générale de l' UNESCO de IFIP pour publication. Des traductions de la norme ont été faites pour le russe , l' allemand , le français , le bulgare , puis plus tard le japonais . La norme était également disponible en braille . ALGOL 68 est devenu la norme GOST/ГОСТ -27974-88 en Union soviétique .

  • GOST 27974-88 Langage de programmation ALGOL 68 – Язык программирования АЛГОЛ 68
  • GOST 27975-88 Langage de programmation ALGOL 68 étendu – Язык программирования АЛГОЛ 68 расширенный

En anglais, la déclaration de cas d'Algol68 lit case ~ in ~ out ~ esac . En russe , cela se lit выб ~ в ~ либо ~ быв .

Citrine

La localisation est la caractéristique principale du langage de programmation Citrine . En citrine, chaque langue humaine a sa propre version, par exemple la version en langue frisonne occidentale est appelée Citrine/FY. Citrine propose des mots-clés localisés, des chiffres localisés et une ponctuation localisée. Les utilisateurs peuvent traduire des fichiers de code d'une langue à une autre en utilisant une approche basée sur les chaînes. Au moment de la rédaction, Citrine prend en charge 111 langues humaines. Le support n'est pas limité aux langues connues ; toutes les langues humaines naturelles sont acceptées pour inclusion, jusqu'à EGIDS-6 .

Schème

Bien que l' internationalisation ne fasse partie d'aucune norme Scheme , l'expressivité et la flexibilité du langage permettent l'ajout de l'internationalisation en tant que bibliothèque . International Scheme est un projet open source auquel n'importe qui peut contribuer une traduction. Étant donné que les traductions de Scheme peuvent être chargées en tant que bibliothèques, les programmes de Scheme peuvent être multilingues .

Basé sur des langues autres que l'anglais

Mots-clés dans Nom La description Relier
amharique AxumLight / Geez# Langage de programmation basé sur l'amharique sur la plate-forme .NET [1]
BunnaScript Un langage de programmation JavaScript et TypeScript multilingue qui vous permet d'écrire du code informatique dans votre langue maternelle. Prend actuellement en charge la langue amharique. [2]
arabe Al-Khawarizm Langage de niveau intermédiaire pour la programmation système avec IDE personnalisé. Destiné à des fins professionnelles. prend en charge les plates-formes Windows et Linux. Premières conceptions et développements en 2008. État du développement : actif. [3]
Jeem Langage de programmation procédurale arabe qui utilise à la fois des fonctionnalités de C et de Pascal. Prend en charge les graphiques simples. Destiné à des fins éducatives. Développé par Mohammad Ammar Alsalka. Sorti en 2006. [4]
ARLOGUE Un langage open source basé sur l' interpréteur du logo UCB .
Ebda3 Un langage de programmation de haut niveau multi-paradigmes.
Qalb Un langage de programmation de type Scheme . [5]
Kalimat Un langage de programmation qui vise à aider les enfants arabes à apprendre la programmation.
Ammoria Langage orienté objet [6]
Loughaty (MyProLang) Un langage de programmation arabe naturel à usage général basé sur une syntaxe propriétaire.
Phénix Un langage procédural impératif de haut niveau de type C. [7]
bengali ChaScript Construit en utilisant la grammaire ECMAScript . [8]
Chinois Chinois BASIQUE dialectes BASIC localisés en chinois basés sur Applesoft BASIC ; pour les clones taïwanais Apple II et le Multitech Microprofessor II .
Python chinois Une version de Python localisée en chinois. [9]
Langage de programmation facile Un langage chinois de développement rapide d'applications .
Wenyan Une langue ésotérique qui suit de près la grammaire et le ton du chinois classique ; il compile en JavaScript et Python (avec C, etc. à venir). [10] [11]
ZhPy Un module Python complet qui convertit les mots-clés, les variables et les paramètres chinois.
tchèque et slovaque Karel Un langage de programmation éducatif avec des versions tchèque et slovaque .
néerlandais Superlogo Créé pour l'enseignement assisté par ordinateur , basé sur Logo .
Drame Un langage d'assemblage à des fins éducatives.
finlandais sampo Un langage de programmation éducatif de type Forth utilisé dans les années 1980 par un lycée de la ville d' Oulu .
Tampio Conçu pour ressembler à un langage naturel. Orienté objet. [12]
français ALLER A++ Un langage de programmation ésotérique vaguement basé sur le français et l'anglais. [13]
Linotte
LSE (Langue Symbolique d'Enseignement) Langage de programmation pédagogique conçu dans les années 1970 à l'École Supérieure d'Électricité. Une sorte de BASIC, mais avec des procédures, des fonctions et des variables locales, comme en Pascal.
BASICOIS BASIC avec mots-clés français
SPIP Langage de modèle avec la syntaxe française
Allemand Teuton Une implémentation allemande de Python . [14]
grec Glossa Basé sur Pascal , utilisé à des fins pédagogiques dans l'enseignement secondaire. [15]
M2000 Environnement de programmation utilisant des mots-clés grecs et/ou anglais. Langage de base similaire (interprète) avec plus de 500 mots-clés, y compris la POO, les threads, les événements, les fonctions Lambda. Liste des dialectes BASIC ,

[16]

hébreu TamliLogo Une implémentation hébraïque de Logo . [17]
hindi Langage de programmation Bharat Un langage de programmation hindi avec toutes les fonctionnalités de base mordan comme les boucles, la fonction, les classes, la structure. Son interpréteur est écrit en python. Vous pouvez installer dans votre système local ou vous pouvez utiliser un interprète en ligne

[18]

Kalaam.io Kalaam est le langage de programmation en hindi et possède toutes les fonctionnalités de base d'un langage de programmation moderne. Des boucles for aux boucles while et des fonctions aux instructions conditionnelles. Kalaam possède son propre analyseur, interpréteur, pile de mémoire virtuelle et exécute le code source à partir de l'arbre d'analyse généré par l'analyseur. [19]
Langage de programmation hindi Un langage de programmation hindi pour le .NET Framework . [20]
Langue W Un langage HTML traduit en hindi [21]
hindi , bengali , gujarati Système de programmation Hindawi Un ensemble de variantes de C, C++ , lex , yacc , assembly , BASIC , Logo et Ada
islandais Fjölnir Un langage de programmation impératif des années 1980.
indonésien BAIK C avec des mots-clés indonésiens. [22]
irlandais Setanta Langage généraliste de haut niveau qui s'exécute dans le navigateur. Contient une API graphique qui peut être utilisée pour créer des jeux et des animations [23]
italien Monicelli Un langage de programmation ésotérique basé sur le soi-disant "Supercazzola" du film My Friends (film) https://github.com/esseks/monicelli
Japonais Dolittle Développé à des fins éducatives. Logiciel gratuit. [24]
Himawari  [ ja ] (ひまわり) Succédé par Nadeshiko. Logiciel gratuit. [25]
Kotodama (ことだま)) sur Squeak Basé sur Squeak . A des fins éducatives. [26]
L'esprit  [ ja ] Une variante de FORTH . Commercial. [27]
Nadeshiko  [ ja ] (なでしこ) Successeur de Himawari. Logiciel libre open source. Choisi (avec MIT Scratch) dans l'un des 3 manuels officiels d'arts techniques pour les collèges au Japon, à partir de 2022. [28]
Produire  [ ja ] Un langage de programmation japonais orienté objet. Successeur de TTSneo. Logiciel gratuit. [29]
TTSneo  [ ja ] Un langage de programmation japonais. Succédé par Produire. Logiciel gratuit. [30]
Unchiku (うんちく) Un langage de programmation japonais. A des fonctions/opérations limitées. Développé à des fins éducatives. [31]
Javanais vu Un langage Python traduit en javanais. [32]
coréen Ssiat Une langue utilisant le Hangul ( coréen ). Le nom Ssiat (씨앗) signifie « graine » en coréen.
Aheui  [ ko ] Un langage de programmation ésotérique similaire à Befunge mais utilisant Hangul
Changjo Une langue utilisant le Hangul . Il est utilisé pour la programmation multimédia et de jeux.
hEn avant Un système Forth avec un ensemble de mots clés coréens facultatifs . [33]
Latin Lusus
Lingua::Romana::Perligata Syntaxe alternative pour Perl 5 qui permet la programmation en latin. [34]
letton Dzintars Ruby traduit en letton. [35]
lituanien Setonas Python traduit en lituanien. [36]
malais malais BASIC avec des mots-clés en malais [37]
persan Farsinet Un langage de programmation orienté objet pour .NET Framework . C'est similaire à C# et Delphi. [38]
Kharazmi Un langage de programmation persan et un IDE conçu pour enseigner la programmation aux collégiens, similaire à Pascal
Kati (زبان کاتی) Un langage de programmation en ligne en langue persane. [39]
Hachemi (آقای هاشمی) dérivé de "SimpleLanguege" qui est un exemple de langage simple construit à l'aide de l'API Truffle. [40]
Simorgh (SPL) SPL a été inventé dans le but que les personnes non techniques soient capables de produire leurs propres applications portables qui peuvent être écrites dans leur propre langue maternelle. http://www.simorghonline.com
polonais AC-Logo Logo avec les commandes polonaises IDŹ, OTO, NAPRZÓD etc. créé en 1992
SAKO Une langue créée dans les années 1950 et surnommée le « Fortran polonais »
EOL Langage orienté expression autorisé pour l'utilisation de mots-clés en polonais ou en anglais.
Portugais VisuAlg Un langage conçu pour enseigner la programmation, basé sur Pascal . [41]
potigol Un langage de programmation fonctionnel en portugais pour les débutants. [42]
Studio Portugais basé en C et PHP à des fins d'apprentissage. [43]
G-Portugol Un langage de programmation avec des mots-clés portugais. [44]
russe 1C : Entreprise Un framework et un langage pour les applications métier. Des mots-clés anglais peuvent également être utilisés.
?? Un langage de programmation procédural interprété avec un système de type dynamique fort.
налитик Un langage pour les manipulations symboliques avec des expressions algébriques utilisé dans la série soviétique d' ordinateurs MIR .
-76 Un langage pour les manipulations symboliques avec des expressions algébriques utilisé dans la série soviétique d' ordinateurs Elbrus .
ЯМБ  [ ru ] ЯМБ (язык машин бухгалтерских) (langage machine pour les machines comptables) - Un langage de programmation russe pour les ordinateurs comptables spécialisés Iskra-554, Iskra-555 et Neva-501.
ир  [ ru ] Similaire à Pascal et IDE, principalement destiné à un usage éducatif dans les écoles. Le nom est un acronyme qui signifie Комплект ученический 'Мир' (l'environnement de l'étudiant 'Mir').
обик Un langage simple pour enseigner les bases de la programmation aux enfants.
?? Une langue utilisée sur Nairi
-65 Un langage utilisé sur MIR
УАЯ  [ ru ] Un langage pour étudier la programmation
serbe с плус Ћ плус плус (serbe, "C plus plus") est un langage de programmation de type JavaScript basé sur l' écriture cyrillique [45]
Espanol GarGar Un langage de programmation procédural basé sur Pascal à des fins d'apprentissage.
PSeInt Un interpréteur de pseudocode pour l'espagnol, comme Pascal, avec une syntaxe entièrement basée sur l'espagnol. PSeInt est l'abréviation de Pseudocode Interpreter .
Qriollo Langage de programmation fonctionnel strict impur qui compile en C, Python et JVM Bytecode, avec des mots-clés en espagnol Rioplatense , parlé à Buenos Aires . [46]
latino Un langage avec une syntaxe entièrement basée sur l'espagnol. [47]
Si Un pseudo-langage de traduction directe pour le codage en C et C++ avec des mots-clés espagnols. [48]
Pauscal  [ es ] Une langue avec une syntaxe entièrement basée sur l'espagnol ; compilateur pour Windows 32 bits.
InformATE  [ es ] Une traduction de Inform , utilisé pour créer des jeux basés sur du texte.
swahili échanger Langage de programmation swahili, c'est un langage de programmation éducatif construit sur Nodejs, il a été conçu pour aider les locuteurs swahili à comprendre facilement le concept de codage et de programmation en général. [49] [50]
suédois Enkelt Un langage avec une syntaxe entièrement suédoise. Transpilé en Python. [51]
Tagalog Bato Ruby traduit en tagalog. [52]
Tamil Ezhil Développé à des fins éducatives.
Swaram Un langage simple, généraliste et procédural.
Langue W Traduction HTML en langue tamoule https://github.com/rvenkatesh29/w_language
ourdou UrduScript Un dialecte de JavaScript . [53]
Alif [54]
Yoruba Yorlang Construit sur Node.js . [55]
(Divers) Logo Dans l'une de ses éditions Apple II , il était disponible en français . Une version utilisée dans l'enseignement bulgare avec des clones bulgares d'Apple II a été traduite en bulgare . LOGO pour le Commodore 64 avait une localisation italienne .
4e dimension Sur les versions locales, sa langue interne utilise des mots - clés français ou allemands .
FOCAL Les mots-clés étaient à l'origine en anglais, mais DEC a produit des versions de FOCAL dans plusieurs langues européennes.
Maman Un langage de programmation et un environnement de développement éducatifs, conçus pour aider les jeunes étudiants à commencer à programmer en créant des animations et des jeux 3D. Il est actuellement disponible en anglais, hébreu, yiddish et chinois.
MS Word et MS Excel Leurs macro- langues étaient auparavant localisées dans des langues autres que l'anglais.
ML4 Un langage pour la programmation de bases de données client/serveur, avec des mots-clés en anglais ou en allemand.
RoboMind Un langage de programmation pédagogique disponible en arabe , chinois , néerlandais , anglais , français , allemand , grec , polonais , portugais brésilien , espagnol , suédois et turc .
Rayure Un langage de programmation visuel d' introduction du Media Lab du MIT avec prise en charge de la programmation dans plusieurs langages inclus en standard.
catrobate Un langage de programmation visuel destiné aux adolescents prenant en charge plus de 60 langues comme le slovène, le polonais, l'hindi, l'allemand, le roumain, le turc, le norvégien, l'akan, le twi, l'hébreu, le chinois simplifié, l'indonésien, le suédois, le chinois traditionnel, le portugais, le brésilien, le croate , bosniaque, thaï, japonais, sindhi, tamoul, swahili, arabe, persan, coréen, serbe (cyrillique), serbe (latin), bengali, français, slovaque, vietnamien, italien, macédonien, russe, portugais, anglais, Canada, tchèque , cinghalais, azerbaïdjanais, kazakh, néerlandais, catalan, albanais, pachto, gujarati, finnois, malais, lituanien, malayalam, danois, hongrois, afrikaans, kannada, grec, bulgare, galicien, ourdou (Pakistan), anglais, australien, anglais, Royaume-Uni, telugu, ukrainien, haoussa et igbo. [56]
TECO Le langage de programmation utilisé pour piloter les actions de l' éditeur de texte TECO . Le dialecte MIT de ce langage a été utilisé pour programmer les premières versions d' Emacs avant sa réécriture de 1985 en Emacs Lisp .
TI-Calculatrice BASIC La version 68000 est localisée. Diverses chaînes de configuration sont également localisées, empêchant la compatibilité binaire directe.
Citrine Le langage de programmation qui peut être utilisé pour coder dans n'importe quelle langue humaine native, comprend un module de traduction pour traduire le code d'une langue humaine à une autre. Au moment de la rédaction, il prend en charge l'anglais, le néerlandais, le lituanien et le roumain.

Langues basées sur des symboles au lieu de mots-clés

  • APL – Un langage basé sur la notation et les abstractions mathématiques.
  • Brainfuck - Un langage de programmation ésotérique minimaliste, créé dans le but de faire tenir un compilateur dans moins de 256 octets .
  • G – Langage graphique utilisé dans LabVIEW (à ne pas confondre avec G-code).
  • Hoon - Un langage de programmation de systèmes pour Urbit, compilant vers Nock.
  • J – Un langage de type APL qui utilise uniquement des caractères spéciaux ASCII et ajoute une programmation au niveau des fonctions .
  • Light Pattern - Un langage qui utilise une série de photographies plutôt que du texte comme code source.
  • Souris - Un langage minimaliste créé par le Dr Peter Grogono qui utilise des caractères ASCII pour les mots-clés.
  • Piet - Un langage de programmation ésotérique basé sur l'art.
  • Plankalkül - Le premier langage de programmation de haut niveau non von Neumann, conçu par Konrad Zuse pendant la Seconde Guerre mondiale en Allemagne .
  • Whitespace – Un langage ésotérique basé sur des caractères blancs (espaces, tabulations et sauts de ligne).

Syntaxe de l'analyseur modifiable

  • Babylscript – Une version multilingue de JavaScript qui utilise plusieurs tokenizers pour prendre en charge les mots-clés localisés dans différentes langues et qui permet aux objets et aux fonctions d'avoir des noms différents dans différentes langues.
  • Component Pascal – Un préprocesseur qui traduit les mots-clés de la langue maternelle en anglais dans une version éducative du BlackBox Component Builder disponible en open source. [57] La traduction est contrôlée via un vocabulaire modifiable et soutenue par des messages d'erreur modifiables du compilateur. Une version russe complète est utilisée dans l'éducation, et il devrait être possible d'adapter d'autres langues de gauche à droite (par exemple, la langue kabarde a été essayée comme preuve de concept).
  • HyperTalk - Un langage de programmation qui permet la traduction par des ressources personnalisées, utilisées dans d' Apple de HyperCard .
  • IronPerunis – Une localisation IronPython 2.7 en lituanien et en russe.
  • AppleScript - Une langue qui permettait autrefois différents "dialectes", dont le français et le japonais ; cependant, ceux-ci ont été supprimés dans les versions ultérieures.
  • Maude – Syntaxe et sémantique entièrement définissables par l'utilisateur, dans les limites du jeu de caractères ASCII.
  • Perl - Alors que les mots - clés de Perl et les noms de fonctions sont généralement en anglais, il permet de modifier son analyseur pour modifier la langue d'entrée, comme dans Damian Conway de Lingua :: Romana :: Perligata module, qui permet aux programmes d'être écrits en latin ou sa langue Lingua::tlhInganHol::yIghun Perl en Klingon. Ils ne modifient pas seulement les mots-clés mais aussi la grammaire pour correspondre à la langue.
  • Perunis - Python 2.6 localisation en lituanien et en russe.
  • Ioke – Ioke est un langage de pliage. Il permet d'écrire du code hautement expressif qui écrit du code. Exemples du même programme en chinois , danois , hindi et espagnol

Les références

Sources

Liens externes