Linguagens de programação não baseadas no inglês - Non-English-based programming languages
Linguagens de programação não baseadas no inglês são linguagens de programação que não usam palavras-chave tiradas ou inspiradas no vocabulário do inglês .
Prevalência de linguagens de programação baseadas em inglês
O uso da língua inglesa na inspiração para a escolha de elementos, em particular para palavras-chave em linguagens de programação de computadores e bibliotecas de códigos, representa uma tendência significativa na história do design de linguagens. De acordo com o banco de dados online HOPL de linguagens, das mais de 8.500 linguagens de programação registradas, cerca de 2.400 delas foram desenvolvidas nos Estados Unidos , 600 no Reino Unido , 160 no Canadá e 75 na Austrália .
Assim, mais de um terço de todas as linguagens de programação foram desenvolvidas em países onde o inglês é o idioma principal. Isso não leva em consideração a parcela de uso de cada linguagem de programação, situações em que uma linguagem foi desenvolvida em um país que não fala inglês, mas usou o inglês para atrair um público internacional (veja o caso de Python da Holanda , Ruby do Japão e Lua do Brasil ), e situações em que foi baseado em outra linguagem de programação que usava o inglês.
Linguagens de programação internacional
O conceito de linguagens de programação de estilo internacional foi inspirado no trabalho dos cientistas da computação britânicos Christopher Strachey , Peter Landin e outros. Representa uma classe de linguagens da qual a linha das linguagens algorítmicas ALGOL foi exemplar.
ALGOL 68
O documento padrão do ALGOL 68 foi publicado em várias línguas naturais . O padrão permitiu a internacionalização da linguagem de programação. Em 20 de dezembro de 1968, o "Relatório Final" (MR 101), foi aprovado pelo Grupo de Trabalho, em seguida, posteriormente aprovado pela Assembleia Geral da UNESCO 's IFIP para publicação. Traduções do padrão foram feitas para russo , alemão , francês , búlgaro e, posteriormente, japonês . O padrão também estava disponível em Braille . ALGOL 68 passou a se tornar o padrão GOST / ГОСТ -27974-88 na União Soviética .
- GOST 27974-88 Linguagem de programação ALGOL 68 - Язык программирования АЛГОЛ 68
- GOST 27975-88 Linguagem de programação ALGOL 68 extendido - Язык программирования АЛГОЛ 68 расширенный
Em inglês, a declaração case de Algol68 lê case ~ in ~ out ~ esac . Em russo , lê-se выб ~ в ~ либо ~ быв .
Citrine
A localização é o principal recurso da linguagem de programação Citrine . No Citrine, cada idioma humano tem sua própria versão, por exemplo, a versão do idioma West Frisian é chamada Citrine / FY. Citrine apresenta palavras-chave localizadas, números localizados e pontuação localizada. Os usuários podem traduzir arquivos de código de um idioma para outro usando uma abordagem baseada em string. No momento em que este artigo foi escrito, o Citrine oferece suporte a 111 idiomas humanos. O suporte não se limita a idiomas bem conhecidos; todas as línguas humanas naturais estão sendo aceitas para inclusão, até EGIDS-6 .
Esquema
Embora a internacionalização não faça parte de nenhum padrão do Scheme , a expressividade e a flexibilidade da linguagem permitem a adição da internacionalização como uma biblioteca . O International Scheme é um projeto de código aberto para o qual qualquer pessoa pode contribuir com uma tradução. Uma vez que as traduções do Scheme podem ser carregadas como bibliotecas, os programas do Scheme podem ser multilíngues .
Baseado em idiomas diferentes do inglês
Palavras-chave em | Nome | Descrição | Ligação |
---|---|---|---|
Amárico | AxumLight / Geez # | Linguagem de programação baseada em amárico na plataforma .NET | [1] |
BunnaScript | Uma linguagem de programação JavaScript e TypeScript multilíngue que permite escrever código de computador em sua linguagem nativa. Atualmente suporta o idioma amárico. | [2] | |
árabe | Al-Khawarizm | Linguagem de nível médio para programação de sistema com IDE customizado. Destinado a fins profissionais. suporta plataformas Windows e Linux. Projeto e desenvolvimento dos primeiros em 2008. Status do desenvolvimento: ativo. | [3] |
Jeem | Linguagem de programação procedural árabe que usa recursos de C e Pascal. Suporta gráficos simples. Destinado a fins educacionais. Desenvolvido por Mohammad Ammar Alsalka. Lançado em 2006. | [4] | |
ARLOGO | Uma linguagem de código aberto baseada no interpretador UCB Logo . | ||
Ebda3 | Uma linguagem de programação multiparadigma de alto nível. | ||
Qalb | Uma linguagem de programação semelhante a Scheme . | [5] | |
Kalimat | Uma linguagem de programação que visa ajudar as crianças árabes a aprender sobre programação. | ||
Ammoria | Linguagem orientada a objetos | [6] | |
Loughaty (MyProLang) | Uma linguagem de programação árabe natural de uso geral baseada em uma sintaxe proprietária. | ||
Fénix | Uma linguagem procedural imperativa de alto nível semelhante a C. | [7] | |
bengali | ChaScript | Construído usando a gramática ECMAScript . | [8] |
chinês | BASIC chinês | Dialetos BASIC localizados em chinês com base no BASIC da Applesoft ; para clones Taiwaneses do Apple II e o Microprofessor II da Multitech . | |
Python chinesa | Uma versão do Python localizada para chinês. | [9] | |
Linguagem de programação fácil | Uma linguagem chinesa de desenvolvimento rápido de aplicativos . | ||
Wenyan | Uma língua esotérica que segue de perto a gramática e o tom do chinês clássico ; ele compila para JavaScript e Python (com C, etc. em breve). | [10] [11] | |
ZhPy | Um módulo Python completo que converte palavras-chave, variáveis e parâmetros chineses. | ||
Tcheco e eslovaco | Karel | Uma linguagem de programação educacional com versões tcheca e eslovaca . | |
holandês | Superlogo | Criado para instrução auxiliada por computador , com base no logotipo . | |
Drama | Uma linguagem assembly para fins educacionais. | ||
finlandês | sampo | Uma linguagem de programação educacional do tipo Forth usada na década de 1980 por uma escola secundária na cidade de Oulu . | |
Tampio | Feito para parecer uma linguagem natural. Orientado a Objeto. | [12] | |
francês | GOTO ++ | Uma linguagem de programação esotérica vagamente baseada em francês e inglês. | [13] |
Linotte | |||
LSE (linguagem Symbolique d'Enseignement) | Linguagem de programação pedagógica desenvolvida na década de 1970 na École Supérieure d'Électricité. Uma espécie de BASIC, mas com procedimentos, funções e variáveis locais, como em Pascal. | ||
BASICOIS | BASIC com palavras-chave francesas | ||
SPIP | Linguagem de modelagem com sintaxe francesa | ||
alemão | Teutão | Uma implementação alemã de Python . | [14] |
grego | Glossa | Baseado em Pascal , usado para fins educacionais no ensino médio. | [15] |
M2000 | Ambiente de programação usando palavras-chave em grego e ou inglês. Linguagem básica como (intérprete) com mais de 500 palavras-chave, incluindo OOP, Threads, Eventos, Funções Lambda. | Lista de dialetos BASIC , | |
hebraico | TamliLogo | Uma implementação hebraica do Logo . | [17] |
hindi | Linguagem de programação Bharat | Uma linguagem de programação Hindi com todas as funcionalidades básicas do mordan como loops, função, classes, estrutura. Seu interpretador é escrito em python. Você pode instalar em seu sistema local ou você pode usar um intérprete online | |
Kalaam.io | Kalaam é a linguagem de programação em hindi e possui todas as funcionalidades básicas de uma linguagem de programação moderna. De loops for para loops while e de funções para instruções condicionais. O Kalaam tem seu próprio analisador, interpretador, pilha de memória virtual e executa o código-fonte da árvore de análise gerada pelo analisador. | [19] | |
Hindi linguagem de programação | Uma linguagem de programação Hindi para o .NET Framework . | [20] | |
Linguagem W | Um idioma HTML traduzido para hindi | [21] | |
Hindi , bengali , guzerate | Sistema de Programação Hindawi | Um conjunto de variantes de C, C ++ , lex , yacc , assembly , BASIC , Logo e Ada | |
islandês | Fjölnir | Uma linguagem de programação imperativa da década de 1980. | |
indonésio | BAIK | C com palavras-chave indonésias. | [22] |
irlandês | Setanta | Linguagem de uso geral de alto nível que é executada no navegador. Contém uma API gráfica que pode ser usada para fazer jogos e animações | [23] |
italiano | Monicelli | Uma linguagem de programação esotérica baseada no chamado "Supercazzola" do filme Meus Amigos (filme) | https://github.com/esseks/monicelli |
japonês | Dolittle | Desenvolvido para fins educacionais. Freeware. | [24] |
Himawari (ひ ま わ り) | Sucesso de Nadeshiko. Freeware. | [25] | |
Kotodama (こ と だ ま)) no Squeak | Baseado no Squeak . Para fins educacionais. | [26] | |
Mente | Uma variante de FORTH . Comercial. | [27] | |
Nadeshiko (な で し こ) | Sucessor de Himawari. Freeware de código aberto. Escolhido (junto com o MIT Scratch) em um dos 3 livros oficiais de artes técnicas para escolas de ensino médio no Japão, a partir de 2022. | [28] | |
Produire | Uma linguagem de programação japonesa orientada a objetos. Sucessor do TTSneo. Freeware. | [29] | |
TTSneo | Uma linguagem de programação japonesa. Sucesso de Produire. Freeware. | [30] | |
Unchiku (う ん ち く) | Uma linguagem de programação japonesa. Tem funções / operações limitadas. Desenvolvido para fins educacionais. | [31] | |
Javanês | Sawa | Uma linguagem Python traduzida para o javanês. | [32] |
coreano | Ssiat | Um idioma que usa hangul ( coreano ). O nome Ssiat (씨앗) significa "semente" em coreano. | |
Aheui | Uma linguagem de programação esotérica semelhante a Befunge, mas usando Hangul | ||
Changjo | Uma linguagem que usa Hangul . É usado para multimídia e programação de jogos. | ||
hForth | Um sistema Forth com um conjunto opcional de palavras - chave coreanas . | [33] | |
Latina | Lusus | ||
Lingua :: Romana :: Perligata | Sintaxe alternativa para Perl 5 que permite a programação em latim. | [34] | |
letão | Dzintars | Ruby traduzido para o letão. | [35] |
lituano | Setonas | Python traduzido para o lituano. | [36] |
malaio | Malaio | BASIC com palavras-chave malaias | [37] |
persa | Farsinet | Uma linguagem de programação orientada a objetos para .NET Framework . É semelhante a C # e Delphi. | [38] |
Kharazmi | Uma linguagem de programação persa e IDE projetada para ensinar programação para alunos do ensino médio, semelhante ao Pascal | ||
Kati (زبان کاتی) | Uma linguagem de programação online em língua persa. | [39] | |
Hashemi (آقای هاشمی) | bifurcada de "SimpleLanguege", que é uma linguagem de exemplo simples construída usando a API Truffle. | [40] | |
Simorgh (SPL) | O SPL foi inventado com o objetivo de que pessoas não técnicas pudessem produzir seus próprios aplicativos portáteis que pudessem ser escritos em sua própria língua nativa. http://www.simorghonline.com | ||
polonês | AC-Logo | Logotipo com comandos poloneses IDŹ, OTO, NAPRZÓD etc. criado em 1992 | |
SAKO | Um idioma criado na década de 1950 e apelidado de " Fortran polonês " | ||
EOL | Idioma orientado a expressões permitido para o uso de palavras-chave em polonês ou inglês. | ||
português | VisuAlg | Uma linguagem desenvolvida para ensinar programação, baseada em Pascal . | [41] |
potigol | Uma linguagem de programação funcional em português para iniciantes. | [42] | |
Portugol Studio | baseado em C e PHP para fins de aprendizagem. | [43] | |
G-Portugol | Uma linguagem de programação com palavras-chave em português. | [44] | |
russo | 1C: Empresa | Uma estrutura e linguagem para aplicativos de negócios. Palavras-chave em inglês também podem ser usadas. | |
РАПИРА | Uma linguagem de programação procedural interpretada com forte sistema de tipos dinâmicos. | ||
Аналитик | Uma linguagem para manipulações simbólicas com expressões algébricas usadas na série soviética de computadores MIR . | ||
Эль-76 | Uma linguagem para manipulações simbólicas com expressões algébricas usadas na série soviética de computadores Elbrus . | ||
ЯМБ | ЯМБ (язык машин бухгалтерских) (linguagem de máquina para máquinas de contabilidade) - Linguagem de programação russa para computadores de contabilidade especializados Iskra-554, Iskra-555 e Neva-501. | ||
КуМир | Semelhante a Pascal e IDE, principalmente destinado ao uso educacional em escolas. O nome é um acrônimo, que significa Комплект ученический 'Мир' (ambiente do aluno 'Mir'). | ||
Робик | Uma linguagem simples para ensinar o básico de programação para crianças. | ||
ЯАП | Uma linguagem usada em Nairi | ||
АЛМИР-65 | Uma linguagem usada no MIR | ||
УАЯ | Uma linguagem para estudar programação | ||
sérvio | Ћ плус плус | Ћ плус плус (sérvio, "C plus plus") é uma linguagem de programação semelhante a JavaScript baseada em script cirílico | [45] |
espanhol | GarGar | Uma linguagem de programação procedural baseada em Pascal para fins de aprendizagem. | |
PSeInt | Um interpretador de pseudocódigo para espanhol, como Pascal, com uma sintaxe totalmente baseada em espanhol. PSeInt é uma abreviatura de Pseudocode Interpreter . | ||
Qriollo | Uma linguagem de programação estritamente funcional impura que compila em C, Python e JVM Bytecode, com palavras-chave em espanhol Rioplatense , falado em Buenos Aires . | [46] | |
Latino | Um idioma com uma sintaxe totalmente baseada em espanhol. | [47] | |
Si | Uma pseudo-linguagem de tradução direta para codificação em C e C ++ com palavras-chave em espanhol. | [48] | |
Pauscal | Um idioma com uma sintaxe totalmente baseada em espanhol; compilador para Windows de 32 bits. | ||
Informar | Uma tradução do Inform , usado para criar jogos baseados em texto. | ||
Suaíli | troca | Linguagem de programação suaíli, é uma linguagem de programação educacional construída sobre Nodejs. Foi construída como uma forma de ajudar os falantes de suaíli a compreender facilmente o conceito de codificação e programação em geral. | [49] [50] |
sueco | Enkelt | Uma linguagem com uma sintaxe totalmente baseada em sueco. Transpilado para Python. | [51] |
Tagalo | Bato | Ruby traduzido para o tagalo. | [52] |
tâmil | Ezhil | Desenvolvido para fins educacionais. | |
Swaram | Uma linguagem simples, de uso geral e procedural. | ||
Linguagem W | Tradução de HTML em Tamil | https://github.com/rvenkatesh29/w_language | |
urdu | UrduScript | Um dialeto do JavaScript . | [53] |
Alif | [54] | ||
Ioruba | Yorlang | Construído no topo de Node.js . | [55] |
(Vários) | Logotipo | Em uma de suas edições do Apple II , ele estava disponível em francês . Uma versão usada na educação búlgara com clones búlgaros do Apple II foi traduzida para o búlgaro . LOGO para o Commodore 64 teve uma localização italiana . | |
4ª Dimensão | Nas versões locais, seu idioma interno usa palavras - chave em francês ou alemão . | ||
FOCAL | As palavras-chave estavam originalmente em inglês, mas a DEC produziu versões do FOCAL em várias línguas europeias. | ||
Mamãe | Uma linguagem de programação educacional e ambiente de desenvolvimento, projetado para ajudar jovens estudantes a começar a programar criando animações e jogos 3D. Atualmente está disponível em inglês, hebraico, iídiche e chinês. | ||
MS Word e MS Excel | Seus macro idiomas costumavam ser localizados em idiomas diferentes do inglês. | ||
ML4 | Linguagem para programação de banco de dados cliente / servidor, com palavras-chave em inglês ou alemão. | ||
RoboMind | Uma linguagem de programação educacional disponível em árabe , chinês , holandês , inglês , francês , alemão , grego , polonês , português do Brasil , espanhol , sueco e turco . | ||
Arranhar | Uma linguagem de programação visual introdutória do Media Lab do MIT com suporte para programação em várias linguagens incluídas como padrão. | ||
Catrobat | Uma linguagem de programação visual voltada para adolescentes com suporte para mais de 60 idiomas como esloveno, polonês, hindi, alemão, romeno, turco, norueguês, akan, twi, hebraico, chinês simplificado, indonésio, sueco, chinês tradicional, português, brasileiro, croata , Bósnio, tailandês, japonês, sindi, tâmil, suaíli, árabe, persa, coreano, sérvio (cirílico), sérvio (latino), bengali, francês, eslovaco, vietnamita, italiano, macedônio, russo, português, inglês, Canadá, tcheco , Sinhala, Azerbaijani, Cazaque, Holandês, Catalão, Albanês, Pashto, Gujarati, Finlandês, Malaio, Lituano, Malayalam, Dinamarquês, Húngaro, Afrikaans, Kannada, Grego, Búlgaro, Galego, Urdu (Paquistão), Inglês, Austrália, Inglês, Reino Unido, Telugu, Ucraniano, Hausa e Igbo. | [56] | |
TECO | A linguagem de programação usada para orientar as ações do editor de texto TECO . O dialeto do MIT desta linguagem foi usado para programar as primeiras versões do Emacs antes de sua reescrita em 1985 no Emacs Lisp . | ||
TI-Calculator BASIC | A versão 68000 está localizada. Várias strings de configuração também são localizadas, evitando a compatibilidade binária direta. | ||
Citrine | Linguagem de programação que pode ser usada para codificar em qualquer linguagem humana nativa, inclui um módulo tradutor para traduzir o código de uma linguagem humana para outra. No momento em que este artigo foi escrito, ele suportava inglês, holandês, lituano e romeno. |
Idiomas baseados em símbolos em vez de palavras-chave
- APL - Linguagem baseada em notação matemática e abstrações.
- Brainfuck - Linguagem de programação esotérica e minimalista, criada com o propósito de ter um compilador que cabe em menos de 256 bytes .
- G - Linguagem gráfica usada no LabVIEW (não deve ser confundida com o código G).
- Hoon - Linguagem de programação de sistemas para Urbit, compilando para Nock.
- J - Uma linguagem semelhante a APL que usa apenas caracteres especiais ASCII e adiciona programação em nível de função .
- Padrão de luz - uma linguagem que usa uma série de fotografias em vez de texto como código-fonte.
- Mouse - Uma linguagem minimalista criada pelo Dr. Peter Grogono que usa caracteres ASCII para palavras-chave.
- Piet - Uma linguagem de programação esotérica baseada em arte.
- Plankalkül - A primeira linguagem de programação de alto nível não von Neumann, projetada por Konrad Zuse durante a Segunda Guerra Mundial na Alemanha .
- Espaço em branco - uma linguagem esotérica baseada em caracteres de espaço em branco (espaços, tabulações e quebras de linha).
Sintaxe do analisador modificável
- Babylscript - Uma versão multilíngue do JavaScript que usa vários tokenizers para oferecer suporte a palavras-chave localizadas em diferentes idiomas e que permite que objetos e funções tenham nomes diferentes em idiomas diferentes.
- Component Pascal - Um pré-processador que traduz palavras-chave do idioma nativo para o inglês em uma versão educacional do BlackBox Component Builder disponível como código-fonte aberto. [57] A tradução é controlada por meio de um vocabulário modificável e suportada por mensagens de erro do compilador modificáveis. Uma versão russa completa é usada na educação e deve ser possível acomodar outras línguas da esquerda para a direita (por exemplo, a língua cabardiana foi tentada como uma prova de conceito).
- HyperTalk - Uma linguagem de programação, o que permite a tradução via recursos personalizados, usados na Apple 's HyperCard .
- IronPerunis - Uma localização do IronPython 2.7 para lituano e russo.
- AppleScript - linguagem que antes permitia diferentes "dialetos", incluindo francês e japonês; no entanto, eles foram removidos em versões posteriores.
- Maude - Sintaxe e semântica totalmente definidas pelo usuário, dentro dos limites do conjunto de caracteres ASCII.
- Perl - Enquanto palavras-chave da linguagem Perl e nomes de função são geralmente em Inglês, permite a modificação de seu analisador para modificar o idioma de entrada, como em Damian Conway 's Lingua :: Romana :: Perligata módulo, que permite que programas sejam escritos em latim ou sua linguagem Perl Lingua :: tlhInganHol :: yIghun em Klingon. Eles não mudam apenas as palavras-chave, mas também a gramática para corresponder ao idioma.
- Perunis - localização do Python 2.6 para lituano e russo.
- Ioke - Ioke é uma linguagem dobrável. Ele permite escrever código altamente expressivo que escreve código. Exemplos do mesmo programa em chinês , dinamarquês , hindi e espanhol
Referências
Fontes
- Pigott, Diarmuid (2006). "HOPL, a história das linguagens de programação" . Arquivado do original em 20/02/2011 . Página visitada em 14/04/2008 .
links externos
- Página de informações SAKO em HOPL - Por Diarmuid Pigott