Języki programowania inne niż angielskie — Non-English-based programming languages
Języki programowania inne niż angielski to języki programowania , które nie używają słów kluczowych zaczerpniętych ze słownictwa angielskiego lub zainspirowanych nim .
Rozpowszechnienie języków programowania opartych na języku angielskim
Wykorzystanie języka angielskiego jako inspiracji przy wyborze elementów, w szczególności słów kluczowych w językach programowania komputerowego i bibliotekach kodu, stanowi istotny trend w historii projektowania języków. Według internetowej bazy danych języków HOPL z ponad 8500 zarejestrowanych języków programowania około 2400 z nich zostało opracowanych w Stanach Zjednoczonych , 600 w Wielkiej Brytanii , 160 w Kanadzie i 75 w Australii .
Tak więc ponad jedna trzecia wszystkich języków programowania została opracowana w krajach, w których angielski jest językiem podstawowym. Nie bierze to pod uwagę udziału każdego języka programowania, sytuacji, w których język został opracowany w kraju nieanglojęzycznym, ale używał angielskiego, aby dotrzeć do międzynarodowej publiczności (patrz przypadek Pythona z Holandii , Ruby z Japonii , i Lua z Brazylii ) oraz sytuacje, w których był oparty na innym języku programowania, który używał angielskiego.
Międzynarodowe języki programowania
Koncepcja języków programowania w stylu międzynarodowym została zainspirowana pracami brytyjskich informatyków Christophera Stracheya , Petera Landina i innych. Reprezentuje klasę języków, których wzorem była linia języków algorytmicznych ALGOL .
ALGOL 68
Standardowy dokument ALGOL 68 został opublikowany w wielu językach naturalnych . Standard umożliwił internacjonalizację języka programowania. W dniu 20 grudnia 1968 roku „Final Report” (MR 101) został przyjęty przez Grupę Roboczą, następnie następnie zatwierdzony przez Zgromadzenie Ogólne UNESCO „s IFIP do publikacji. Tłumaczenia standardu zostały wykonane na język rosyjski , niemiecki , francuski , bułgarski , a później japoński . Standard był również dostępny w alfabecie Braille'a . ALGOL 68 stał się standardem GOST/ГОСТ- 27974-88 w Związku Radzieckim .
- GOST 27974-88 Język programowania ALGOL 68 – Язык программирования АЛГОЛ 68
- GOST 27975-88 Język programowania ALGOL 68 rozszerzony – Язык программирования АЛГОЛ 68 расширенный
W języku angielskim instrukcja case Algol68 brzmi case ~ in ~ out ~ esac . W języku rosyjskim brzmi to выб ~ в ~ либо ~ быв .
cytryn
Lokalizacja jest podstawową cechą języka programowania Citrine . W Citrine każdy ludzki język ma swoją własną wersję, na przykład wersja w języku zachodniofryzyjskim nazywa się Citrine/FY. Citrine zawiera zlokalizowane słowa kluczowe, zlokalizowane liczby i zlokalizowaną interpunkcję. Użytkownicy mogą tłumaczyć pliki kodu z jednego języka na inny przy użyciu podejścia opartego na ciągach. W chwili pisania tego tekstu Citrine obsługuje 111 ludzkich języków. Wsparcie nie ogranicza się do dobrze znanych języków; wszystkie naturalne języki ludzkie są akceptowane do włączenia, aż do EGIDS-6 .
Schemat
Chociaż internacjonalizacja nie jest częścią żadnego standardu Scheme , wyrazistość i elastyczność języka pozwala na dodanie internacjonalizacji jako biblioteki . International Scheme to projekt open source , do którego każdy może wnieść tłumaczenie. Ponieważ tłumaczenia Scheme mogą być ładowane jako biblioteki, programy Scheme mogą być wielojęzyczne .
Oparte na językach innych niż angielski
Słowa kluczowe w | Nazwa | Opis | Połączyć |
---|---|---|---|
amharski | AxumLight / Geez# | Język programowania oparty na języku amharskim na platformie .NET | [1] |
BunnaScript | Wielojęzyczny język programowania JavaScript i TypeScript, który umożliwia pisanie kodu komputerowego w języku ojczystym. Obecnie obsługuje język amharski. | [2] | |
arabski | Al-Chawarizm | Język średniego poziomu do programowania systemu z niestandardowym środowiskiem IDE. Przeznaczony do użytku profesjonalnego. obsługuje platformy Windows i Linux. Pierwsze projekty i opracowania w 2008 roku. Stan rozwoju : aktywny. | [3] |
Jeem | Arabski proceduralny język programowania, który wykorzystuje funkcje zarówno C, jak i Pascal. Obsługuje prostą grafikę. Przeznaczony do celów edukacyjnych. Opracowany przez Mohammada Ammara Alsalkę. Wydany w 2006 roku. | [4] | |
ARLOGO | Język open-source oparty na interpreterze logo UCB . | ||
Ebda3 | Wieloparadygmatyczny język programowania wysokiego poziomu. | ||
Qalb | A schemat język programowania -jak. | [5] | |
Kalimat | Język programowania, którego celem jest pomoc arabskim dzieciom w nauce programowania. | ||
Ammoria | Język zorientowany obiektowo | [6] | |
Loughaty (MyProLang) | Naturalny arabski język programowania ogólnego przeznaczenia oparty na zastrzeżonej składni. | ||
Feniks | Imperatywny język proceduralny wysokiego poziomu podobny do C. | [7] | |
bengalski | ChaScript | Zbudowany przy użyciu gramatyki ECMAScript . | [8] |
chiński | Chiński PODSTAWOWY | Chiński -zlokalizowany PODSTAWOWE dialekty podstawie Applesoft BASIC ; dla tajwańskich klonów Apple II i Multitech Microprofessor II . | |
Chiński Python | Wersja Pythona zlokalizowana na język chiński. | [9] | |
Łatwy język programowania | Chiński język szybkiego tworzenia aplikacji . | ||
Wenyan | Język ezoteryczny, który ściśle nawiązuje do gramatyki i tonu klasycznego chińskiego ; kompiluje się do JavaScript i Pythona (w przygotowaniu C itp.). | [10] [11] | |
ZhPy | W pełni funkcjonalny moduł Pythona, który konwertuje chińskie słowa kluczowe, zmienne i parametry. | ||
czeski i słowacki | Karel | Język programowania edukacyjnych z czeskimi i słowackimi wersjach. | |
holenderski | Superlogo | Stworzony do instruktażu wspomaganego komputerowo , na podstawie Logo . | |
Dramat | Język asemblera do celów edukacyjnych. | ||
fiński | sampo | Edukacyjny język programowania podobny do Forth , używany w latach 80. przez liceum w mieście Oulu . | |
Tampio | Wygląda jak język naturalny. Zorientowany obiektowo. | [12] | |
Francuski | GOTO++ | Ezoteryczny język programowania oparty luźno na francuskim i angielskim. | [13] |
Linotte | |||
LSE (Language Symbolique d'Enseignement) | Pedagogiczny język programowania zaprojektowany w latach 70. w École Supérieure d'Électricité. Rodzaj BASIC-a, ale z procedurami, funkcjami i zmiennymi lokalnymi, jak w Pascalu. | ||
PODSTAWOWE | BASIC z francuskimi słowami kluczowymi | ||
SPIP | Język szablonów ze składnią francuską | ||
Niemiecki | Teuton | Niemiecka implementacja Pythona . | [14] |
grecki | Połysk | Oparte na Pascalu , używane do celów edukacyjnych w szkołach średnich. | [15] |
M2000 | Środowisko programowania przy użyciu greckich i lub angielskich słów kluczowych. Podstawowy jak język (interpreter) z ponad 500 słowami kluczowymi, w tym OOP, wątki, zdarzenia, funkcje lambda. | Lista dialektów BASIC , | |
hebrajski | TamliLogo | Hebrajska implementacja Logo . | [17] |
hinduski | Język programowania Bharat | Język programowania w języku hindi ze wszystkimi podstawowymi funkcjami Mordan, takimi jak pętle, funkcja, klasy, struktura. Jego interpreter jest napisany w Pythonie. Możesz zainstalować w swoim lokalnym systemie lub możesz skorzystać z tłumacza online | |
Kalaam.io | Kalaam jest językiem programowania w hindi i posiada wszystkie podstawowe funkcje współczesnego języka programowania. Od pętli for do pętli while i od funkcji do instrukcji warunkowych. Kalaam posiada własny parser, interpreter, stos pamięci wirtualnej i wykonuje kod źródłowy z drzewa parsowania generowanego przez parser. | [19] | |
Język programowania hindi | Hindi język programowania dla platformy .NET Framework . | [20] | |
Język W | Język HTML przetłumaczony na hindi | [21] | |
hindi , bengalski , gudżarati | Hinduski system programowania | Zestaw wariantów C, C++ , lex , yacc , Assembly , BASIC , Logo and Ada | |
islandzki | Fjölnir | Język programowania imperatywnego z lat 80-tych. | |
indonezyjski | BAIK | C z indonezyjskimi słowami kluczowymi. | [22] |
Irlandczyk | Setanta | Język ogólnego przeznaczenia wysokiego poziomu, który działa w przeglądarce. Zawiera graficzne API, które można wykorzystać do tworzenia gier i animacji | [23] |
Włoski | Monicelli | Ezoteryczny język programowania oparty na tak zwanej „Supercazzoli” z filmu My Friends (film) | https://github.com/esseks/monicelli |
język japoński | Dolittle | Opracowany do celów edukacyjnych. Darmowe. | [24] |
Himawari (ひまわり) | Następca Nadeshiko. Darmowe. | [25] | |
Kotodama (ことだま)) na Squeak | Oparte na Pisku . Do celów edukacyjnych. | [26] | |
Umysł | Wariant FORTH . Handlowy. | [27] | |
Nadeshiko (なでしこ) | Następca Himawari. Darmowe oprogramowanie typu open source. Wybrany (wraz z MIT Scratch) w jednym z 3 oficjalnych podręczników sztuk technicznych dla gimnazjów w Japonii, od 2022 roku. | [28] | |
Producent | Zorientowany obiektowo japoński język programowania. Następca TTSneo. Darmowe. | [29] | |
TTSneo | Japoński język programowania. Następca Produire. Darmowe. | [30] | |
Unchiku (うんちく) | Japoński język programowania. Ma ograniczone funkcje/operacje. Opracowany do celów edukacyjnych. | [31] | |
jawajski | sawa | Jawajski przetłumaczony język Python. | [32] |
koreański | Siat | Język używający Hangul ( koreański ). Nazwa Ssiat (씨앗) oznacza po koreańsku „nasienie”. | |
Aheui | Ezoteryczny język programowania podobny do befunge lecz stosując Hangul | ||
Changjo | Język używający Hangul . Służy do programowania multimediów i gier. | ||
hForth | System Forth z opcjonalnym zestawem koreańskich słów kluczowych. | [33] | |
łacina | Lusus | ||
Lingua::Romana::Perligata | Alternatywna składnia dla Perla 5, która umożliwia programowanie w języku łacińskim. | [34] | |
łotewski | Dzintarowie | Ruby przetłumaczone na łotewski. | [35] |
litewski | Setonas | Python przetłumaczony na litewski. | [36] |
malajski | malajski | BASIC ze słowami kluczowymi w języku malajskim | [37] |
perski | Farsinet | Obiektowego języka programowania dla .NET Framework . Jest podobny do C# i Delphi. | [38] |
Kharazmi | Perski język programowania i IDE zaprojektowany do nauczania programowania uczniów szkół średnich, podobny do Pascal | ||
Kati (زبان اتی) | Język programowania online w języku perskim. | [39] | |
Haszemi (آقای هاشمی) | rozwidlony z "SimpleLanguege", który jest prostym przykładowym językiem zbudowanym przy użyciu Truffle API. | [40] | |
Simorg (SPL) | SPL został wynaleziony w celu, aby ludzie nietechniczni byli w stanie tworzyć własne przenośne aplikacje, które mogą być napisane w ich własnym języku ojczystym. http://www.simorghonline.com | ||
Polskie | AC-Logo | Logo z polskimi komendami IDŹ, OTO, NAPRZÓD itp. stworzone w 1992 roku | |
SAKO | Język stworzony w latach 50. XX wieku i nazywany „polskim Fortranem ” | ||
EOL | Język zorientowany na ekspresję pozwala na użycie słów kluczowych w języku polskim lub angielskim. | ||
portugalski | VisuAlg | Język przeznaczony do nauki programowania oparty na Pascalu . | [41] |
potygol | Funkcjonalny język programowania w języku portugalskim dla początkujących. | [42] | |
Studio w Portugalii | oparte na C i PHP w celach edukacyjnych. | [43] | |
G-Portugalia | Język programowania ze słowami kluczowymi w języku portugalskim. | [44] | |
Rosyjski | 1C: Przedsiębiorstwo | Framework i język aplikacji biznesowych. Można również użyć angielskich słów kluczowych. | |
RAPORTY | Interpretowany proceduralny język programowania z silnym dynamicznym systemem typów. | ||
налитик | Język do manipulacji symbolicznych z wyrażeniami algebraicznymi używany w radzieckiej serii komputerów MIR . | ||
ль-76 | Język manipulacji symbolicznych z wyrażeniami algebraicznymi używany w radzieckiej serii komputerów Elbrus . | ||
ЯМБ | ЯМБ (язык машин бухгалтерских) (język maszynowy maszyn księgowych) – rosyjski język programowania specjalizowanych komputerów księgowych Iskra-554, Iskra-555 i Neva-501. | ||
Kuzyr | Podobny do Pascala i IDE, przeznaczony głównie do użytku edukacyjnego w szkołach. Nazwa jest akronimem, co oznacza Комплект ученический 'Мир' (środowisko ucznia Mir). | ||
Робик | Prosty język do nauki podstaw programowania dzieci. | ||
ЯАП | Język używany na Nairi | ||
Р-65 | Język używany w MIR | ||
УАЯ | Język do nauki programowania | ||
serbski | плус плус | Ћ плус плус (serbski, „C plus plus”) to język programowania podobny do JavaScriptu oparty na skrypcie cyrylicy | [45] |
hiszpański | GarGar | Język programowania proceduralnego oparty na Pascalu do celów edukacyjnych. | |
PSeInt | Interpreter pseudokodu dla języka hiszpańskiego, taki jak Pascal, z całkowicie hiszpańską składnią. PSeInt to skrót od Pseudocode Interpreter . | ||
Qriollo | Nieczysty, ściśle funkcjonalny język programowania, który kompiluje się do kodu bajtowego C, Python i JVM, ze słowami kluczowymi w języku hiszpańskim Rioplatense , używanym w Buenos Aires . | [46] | |
latynoski | Język o całkowicie hiszpańskiej składni. | [47] | |
Si | Pseudojęzyk bezpośredniego tłumaczenia do kodowania w C i C++ z hiszpańskimi słowami kluczowymi. | [48] | |
Pauscal | Język o całkowicie hiszpańskiej składni; kompilator dla 32-bitowego systemu Windows. | ||
InformATE | Tłumaczenie Inform , używanego do tworzenia gier tekstowych. | ||
suahili | zamieniać | Język programowania suahili. Jest to edukacyjny język programowania zbudowany na Nodejs. Został stworzony, aby pomóc użytkownikom języka suahili w łatwym zrozumieniu koncepcji kodowania i programowania w ogóle. | [49] [50] |
szwedzki | Enkelt | Język o całkowicie szwedzkiej składni. Przeniesione do Pythona. | [51] |
tagalski | Bato | Ruby przetłumaczone na tagalog. | [52] |
Tamil | Ezhil | Opracowany do celów edukacyjnych. | |
Swaram | Prosty, uniwersalny i proceduralny język. | ||
Język W | Tłumaczenie HTML na język tamilski | https://github.com/rvenkatesh29/w_language | |
Urdu | UrduScript | Dialekt JavaScript . | [53] |
Alif | [54] | ||
Joruba | Yorlang | Zbudowany na bazie Node.js . | [55] |
(Różny) | Logo | W jednym ze swoich wydań Apple II był dostępny w języku francuskim . Wersja używana w bułgarskiej edukacji z bułgarskimi klonami Apple II została przetłumaczona na bułgarski . LOGO dla Commodore 64 miało włoską lokalizację. | |
4. Wymiar | W lokalnych wersjach język wewnętrzny wykorzystuje francuskie lub niemieckie słowa kluczowe. | ||
OGNISKOWY | Słowa kluczowe były pierwotnie w języku angielskim, ale DEC stworzył wersje FOCAL w kilku językach europejskich. | ||
Mama | Edukacyjny język programowania i środowisko programistyczne, zaprojektowane, aby pomóc młodym uczniom rozpocząć programowanie poprzez tworzenie animacji i gier 3D. Obecnie jest dostępny w języku angielskim, hebrajskim, jidysz i chińskim. | ||
MS Word i MS Excel | Ich języki makr były lokalizowane w językach innych niż angielski. | ||
ML4 | Język programowania baz danych klient/serwer ze słowami kluczowymi w języku angielskim lub niemieckim. | ||
RoboMind | Edukacyjny język programowania dostępny w językach arabskim , chińskim , holenderskim , angielskim , francuskim , niemieckim , greckim , polskim , brazylijskim portugalskim , hiszpańskim , szwedzkim i tureckim . | ||
Zadrapanie | Wprowadzający wizualny język programowania z Media Lab firmy MIT z obsługą programowania w wielu językach w standardzie. | ||
Catrobat | Wizualny język programowania przeznaczony dla nastolatków z obsługą ponad 60 języków, takich jak słoweński, polski, hindi, niemiecki, rumuński, turecki, norweski, akan, twi, hebrajski, chiński uproszczony, indonezyjski, szwedzki, chiński tradycyjny, portugalski, brazylijski, chorwacki , bośniacki, tajski, japoński, sindhi, tamilski, suahili, arabski, perski, koreański, serbski (cyrylica), serbski (łaciński), bengalski, francuski, słowacki, wietnamski, włoski, macedoński, rosyjski, portugalski, angielski, kanadyjski, czeski , syngaleski, azerbejdżański, kazachski, holenderski, kataloński, albański, paszto, gudżarati, fiński, malajski, litewski, malajalam, duński, węgierski, afrikaans, kannada, grecki, bułgarski, galicyjski, urdu (Pakistan), angielski, Australia, angielski, Wielka Brytania, telugu, ukraiński, hausa i igbo. | [56] | |
TECO | Język programowania używany do sterowania działaniami edytora tekstu TECO . Dialekt MIT tego języka był używany do programowania wczesnych wersji Emacsa przed jego przepisaniem w 1985 roku w Emacs Lisp . | ||
Kalkulator TI BASIC | Wersja 68000 jest zlokalizowana. Zlokalizowane są również różne ciągi konfiguracyjne, co uniemożliwia bezpośrednią zgodność binarną. | ||
cytryn | Język programowania, który może być używany do kodowania w dowolnym języku ojczystym człowieka, zawiera moduł tłumacza do tłumaczenia kodu z jednego języka ludzkiego na inny. W chwili pisania tego tekstu obsługuje języki angielski, holenderski, litewski i rumuński. |
Języki oparte na symbolach zamiast na słowach kluczowych
- APL – język oparty na notacji matematycznej i abstrakcji.
- Brainfuck – minimalistyczny ezoteryczny język programowania, stworzony w celu dopasowania kompilatora do mniej niż 256 bajtów .
- G – język graficzny używany w LabVIEW (nie mylić z kodem G).
- Hoon – systemowy język programowania dla Urbit, kompilujący się do Nocka.
- J – Język podobny do APL , który używa tylko znaków specjalnych ASCII i dodaje programowanie na poziomie funkcji .
- Wzór światła — język, który jako kod źródłowy wykorzystuje serię fotografii, a nie tekst.
- Mysz – minimalistyczny język stworzony przez dr Petera Grogono, który używa znaków ASCII jako słów kluczowych.
- Piet – Ezoteryczny język programowania oparty na sztuce.
- Plankalkül – Pierwszy wysokopoziomowy język programowania inny niż von Neumann, zaprojektowany przez Konrada Zuse podczas II wojny światowej w Niemczech .
- Whitespace — ezoteryczny język oparty na białych znakach (spacje, tabulatory i podziały wierszy).
Modyfikowalna składnia parsera
- Babylscript – wielojęzyczna wersja JavaScript, która wykorzystuje wiele tokenizatorów do obsługi zlokalizowanych słów kluczowych w różnych językach i która pozwala obiektom i funkcjom mieć różne nazwy w różnych językach.
- Component Pascal — preprocesor, który tłumaczy słowa kluczowe w języku ojczystym na język angielski w edukacyjnej wersji BlackBox Component Builder dostępnej jako open source. [57] Tłumaczenie jest kontrolowane przez modyfikowalny słownik i wspierane przez modyfikowalne komunikaty o błędach kompilatora. W edukacji używa się pełnej wersji rosyjskiej i powinno być możliwe uwzględnienie innych języków pisanych od lewej do prawej (np. jako dowód koncepcji próbowano używać języka kabardyjskiego ).
- HyperTalk język programowania, który umożliwia tłumaczenie za pomocą środków własnych, używane - firmy Apple „s HyperCard .
- IronPerunis – lokalizacja IronPython 2.7 na język litewski i rosyjski.
- AppleScript – język, który kiedyś pozwalał na różne „dialekty”, w tym francuski i japoński; zostały one jednak usunięte w późniejszych wersjach.
- Maude — całkowicie definiowana przez użytkownika składnia i semantyka w granicach zestawu znaków ASCII.
- Perl - Choć słowa kluczowe Perla i nazwy funkcji są zazwyczaj w języku angielskim, pozwala na modyfikację jego parsera zmodyfikować język wprowadzania, takich jak Damian Conway „s Lingua :: Romana :: Perligata moduł, który umożliwia programom być napisane w języku łacińskim lub jego Lingua::tlhInganHol::yIghun Perl w języku klingońskim. Nie tylko zmieniają słowa kluczowe, ale także gramatykę, aby dopasować ją do języka.
- Perunis – lokalizacja Pythona 2.6 na język litewski i rosyjski.
- Ioke – Ioke to składany język. Umożliwia pisanie bardzo ekspresyjnego kodu, który pisze kod. Przykłady tego samego programu w języku chińskim , duńskim , hindi i hiszpańskim
Bibliografia
Źródła
- Pigott, Diarmuid (2006). „HOPL, Historia języków programowania” . Zarchiwizowane od oryginału w dniu 2011-02-20 . Źródło 2008-04-14 .
Zewnętrzne linki
- Strona informacyjna SAKO w HOPL – By Diarmuid Pigott