Non-English-based programming languages

Last updated

Non-English-based programming languages are programming languages that do not use keywords taken from or inspired by English vocabulary.

Contents

Prevalence of English-based programming languages

The use of the English language in the inspiration for the choice of elements, in particular for keywords in computer programming languages and code libraries, represents a significant trend in the history of language design. According to the HOPL online database of languages, [1] out of the 8,500+ programming languages recorded, roughly 2,400 of them were developed in the United States, 600 in the United Kingdom, 160 in Canada, and 75 in Australia.

Thus, over a third of all programming languages have been developed in countries where English is the primary language. This does not take into account the usage share of each programming language, situations where a language was developed in a non-English-speaking country but used English to appeal to an international audience (see the case of Python from the Netherlands, Ruby from Japan, and Lua from Brazil), and situations where it was based on another programming language which used English.

International programming languages

The concept of international-style programming languages was inspired by the work of British computer scientists Christopher Strachey, Peter Landin, and others. It represents a class of languages of which the line of the algorithmic languages ALGOL was exemplary.

ALGOL 68

ALGOL 68's standard document was published in numerous natural languages. The standard allowed the internationalization of the programming language. On December 20, 1968, the "Final Report" (MR 101) was adopted by the Working Group, then subsequently approved by the General Assembly of UNESCO's IFIP for publication. Translations of the standard were made for Russian, German, French, Bulgarian, and then later Japanese. The standard was also available in Braille [ clarification needed ]. ALGOL 68 went on to become the GOST/ГОСТ-27974-88 standard in the Soviet Union.

In English, Algol68's case statement reads case ~ in ~ out ~ esac. In Russian, this reads выб ~ в ~ либо ~ быв.

Citrine

Localization is the core feature of the Citrine Programming Language. Citrine is designed to be translatable to every written human language. For instance the West Frisian language version is called Citrine/FY. Citrine features localized keywords, localized numbers and localized punctuation. Users can translate code files from one language into another using a string-based approach. At the time of writing, Citrine supports 111 human languages. Support is not limited to well-known languages; all natural human languages up to EGIDS-6 are being accepted for inclusion.

Hedy

Hedy is an open-source programming language which was developed for programming education. It was designed to be as instructive as possible and as accessible as possible with a few unique features. As of September 2024 it supports 47 different languages, [4] meaning its keywords can be typed in any of those. It supports languages that do not use the Latin alphabet for their keywords and variable names and it also supports more numbering systems than Arabic numerals, like Eastern Arabic numerals. All of these can be used interchangeably. The error messages are quite verbose, explaining what is wrong and what might be a fix, just like the Rust compiler.

Scheme

While internationalization is not a part of any Scheme standard, the expressiveness and flexibility of the language allows for the addition of internationalization as a library. International Scheme is an open source project to which anyone can contribute a translation. Since translations of Scheme can be loaded as libraries, Scheme programs can be multilingual.

Scratch

Scratch is a block-based educational language. The text of the blocks is translated into many languages, and users can select different translations. Unicode characters are supported in variable and list names. (Scratch lists are not stored inside variables the way arrays or lists are handled in most languages. Variables only store strings, numbers, and, with workarounds, Boolean values, while lists are a separate data type that store sequences of these values.) Projects can be "translated" by simply changing the language of the editor, although this does not translate the variable names.

Based on non-English languages

Programming languages based on human languages other than English
BasisNameDescriptionLink
Alsatian AlsatranA version of Fortran with keywords and built-in identifiers all translated to Alsatian. [5]
Amharic AxumLight / Geez#Amharic-based programming language on the .NET platform
BunnaScriptA multilingual JavaScript and TypeScript programming language that enables writing computer code in the user's native language. Currently supports Amharic language.
Arabic Al-KhawarizmMiddle-level language for system programming with custom IDE. Intended for professional purpose. Supports Windows and Linux platforms. First design and development in 2008. Development status: active.
JeemArabic procedural programming language that uses features from both C and Pascal. Supports simple graphics. Intended for educational purposes. Developed by Mohammad Ammar Alsalka. Released in 2006.
ARLOGOAn open-source language based on the UCB Logo interpreter.
Ebda3A multi-paradigm high-level programming language.
Qalb A Scheme-like programming language. [6]
KalimatA programming language that aims to help Arab children learn about programming. [7]
AmmoriaObject-oriented language
Loughaty (MyProLang)A general-purpose natural Arabic programming language based on a proprietary syntax. [8]
PhoenixA C-like high-level imperative procedural language.
SeenA Bilingual English/Arabic based language that transpiles to Rust.
Azerbaijani NasimiAn Azerbaijani implementation of Python.
Bengali ChaScriptBuilt using ECMAScript grammar. [9]
Chinese Chinese BASIC Chinese-localized BASIC dialects based on Applesoft BASIC; for Taiwanese Apple II clones and the Multitech Microprofessor II.
ChinesePython  [ zh ] (ZhPy)A version of Python with keywords and built-in identifiers all translated to Chinese.
Easy Programming Language A Chinese rapid application development language.
WenyanAn esoteric language that closely follows the grammar and sentence structure of Classical Chinese; it compiles to JavaScript and Python (with C, etc. forthcoming). wenyan-lang on GitHub
Czech and Slovak Karel An educational programming language with Czech and Slovak versions.
Dutch SuperlogoCreated for computer-aided instruction, based on Logo.
DramaAn assembly language for educational purposes.
Finnish sampoAn educational Forth-like programming language used in the 1980s by a high school in the city of Oulu.
TampioMade to look like a natural language. Object-oriented. tampio on GitHub
French GOTO++An esoteric programming language loosely based on French and English.
Linotte
LSE (Language Symbolique d'Enseignement)A pedagogical programming language designed in the 1970s at the École Supérieure d'Électricité. A kind of BASIC, but with procedures, functions, and local variables, like in Pascal.
BASICOISBASIC with French keywords [10]
SPIP Templating language with French syntax [11]
WLangage WinDev programming language
Rouille Rust translated into French [12] rouille on GitHub
German TeutonA German implementation of Python.
SchlangeAnother German implementation of Python.
Greek GlossaBased on Pascal, used for educational purposes in secondary education.
M2000Programming Environment using Greek and or English Keywords. Basic like language (interpreter) with over 500 Keywords, including OOP, Threads, Events, Lambda Functions. List of BASIC dialects,

Environment on GitHub

Hausa HapyHausa Programming language that compiles to Python, for educational purposes. Hapy Github page
Hebrew TamliLogoA Hebrew implementation of Logo.
GenesisAn esoteric programming language based on "Paleo-Hebrew".
Hindi OM LangOM Lang is a multilingual, statically typed programming language that supports more than 9+ Indian languages. OM Lang is very similar to GO, C and Rust. It has its own interpreter and compiler.

OM Lang, OM Lang Android App [ dead link ]

Bharat programming languageA Hindi programming language with all the modern basic functionalities like loops, function, classes, structure. Its interpreter is written in Python. You can install in your local system or you can use online interpreter.

Kalaam.ioKalaam is the programming language in Hindi and has all the basic functionalities of a modern programming language from for loops to while loops and from functions to conditional statements. Kalaam has its own parser, interpreter, Virtual memory stack and executes source code from parse tree generated by the parser.
BhailangBhailang is dynamically typed toy programming language, based on an inside joke, written in Typescript.
Hindi Programming LanguageA Hindi programming language for the .NET Framework.
W languageA Hindi translated HTML language w language on GitHub
Hindi, Bengali, Gujarati Hindawi Programming System A set of variants of C, C++, lex, yacc, assembly, BASIC, and Logo
Icelandic Fjölnir An imperative programming language from the 1980s.
Indonesian BAIKC with Indonesian keywords. BAIK on SourceForge
Irish SetantaHigh level general purpose language that runs in the browser. Contains a graphics API that can be used to make games and animations
Italian CadregaLispA Lisp dialect based a comedian sketch of Aldo Giovanni and Giacomo CadregaLisp on GitHub
GomorraSQLA SQL dialect based upon the Italian series Gomorrah GomorraSQL on GitHub
MonicelliAn esoteric programming language based upon the so-called "Supercazzola" of the movie My Friends monicelli on GitHub
Japanese Dolittle Developed for educational purposes. Freeware.
Himawari  [ ja ] (ひまわり)Succeeded by Nadeshiko. Freeware.
Kotodama (ことだま) on SqueakBased on Squeak. For educational purposes.
Mind  [ ja ]A variant of FORTH. [13] Commercial.
Nadeshiko  [ ja ] (なでしこ)Successor of Himawari. Open source freeware. Chosen (along with MIT Scratch) in one of the 3 official textbooks of technical arts for junior high schools in Japan, from 2022. [14] [15]
Produire  [ ja ]An object-oriented Japanese programming language. Successor of TTSneo. Freeware.
TTSneo  [ ja ]A Japanese programming language. Succeeded by Produire. Freeware.
Unchiku (うんちく)A Japanese programming language. Has limited functions/operations. Developed for educational purposes.
Javanese sawaA Javanese translated Python language. sawa on GitHub
Korean SsiatA language using Hangul (Korean). The name Ssiat (씨앗) means "seed" in Korean.
Aheui  [ ko ]An esoteric programming language similar to Befunge but using Hangul [16]
ChangjoA language using Hangul. It is used for multimedia and game programming.
hForthA Forth system with an optional Korean keyword set.
Latin Lusus
Lingua::Romana::PerligataAlternative Syntax for Perl 5 that allows programming in Latin.
Latvian DzintarsRuby translated into Latvian. dzintars on GitHub
Lithuanian SetonasPython translated into Lithuanian. setonas on GitHub
Malay Malaybasic BASIC with Malay keywords
Malayalam ThengascriptA dialect of JavaScript in the Malayalam language.
MalluscriptAn esoteric scripting language made with Rust based on Manglish with an aim to provide inclusivity and diversity in programming.
Nehiyawewin/Cree Ancestral Code (Cree#)An IDE and language based on the Nehiyaw (Cree) language and cultural storytelling practice. [17]
Persian FarsinetAn object-oriented programming language for .NET Framework. It is similar to C# and Delphi.
KharazmiA Persian programming language and IDE designed to teach programming to middle school students, similar to Pascal
ZangarZangar (Persian for Rust) allows you to write Rust programs in Persian, using Persian keywords and function names. It is adapted from Rouille, the original French implementation of Rust. zangar on GitHub
Kati (زبان کاتی)An online programming language in Persian language.
Hashemi (آقای هاشمی)forked from "SimpleLanguage" that is a simple example language built using the Truffle API. mr-hashemi on GitHub
Simorgh (SPL)SPL has been invented with the aim that non-technical people would be able to produce their own portable applications which can be written in their own native language.
Polish AC-LogoLogo with Polish commands IDŹ, OTO, NAPRZÓD etc. created in 1992
SAKO A language created in the 1950s and nicknamed the "Polish Fortran"
EOLExpression Oriented Language allowed for using Polish or English keywords.
ZdzichAmateur programming language for DOS.
Portuguese VisuAlgA language designed to teach programming, based on Pascal.
potigolA functional programming language in Portuguese for beginners.
Portugol Studiobased in C and PHP for learning purposes.
G-PortugolA programming language with Portuguese keywords. gpt on GitHub
NPortugolA .NET Programming language for embedded scripts
Russian 1C:Enterprise A framework and language for business applications. English keywords can also be used.
РАПИРА An interpreted procedural programming language with strong dynamic type system.
Аналитик A language for symbolic manipulations with algebraic expressions used in the Soviet series of MIR computers. [18]
Эль-76 A language for symbolic manipulations with algebraic expressions used in the Soviet series of Elbrus computers. [19]
ЯМБ  [ ru ]ЯМБ (язык машин бухгалтерских) (machine language for accounting machines) – A Russian programming language for Iskra-554, Iskra-555, and Neva-501 specialized accounting computers.
КуМир  [ ru ]Similar to Pascal and IDE, mainly intended for educational usage in schools. The name is an acronym, which means Комплект ученический 'Мир' ('Mir' student's environment).
Робик A simple language for teaching the basics of programming to children.
ЯАПA language used on Nairi
АЛМИР-65A language used on MIR
УАЯ  [ ru ]A language to study programming
Sanskrit OM Lang OM Lang is a statically typed, multilingual programming language with first-class support for Sanskrit. It claims to be the world's first Sanskrit programming language, offering Sanskrit keywords and syntax. The language aims to experiment with using Sanskrit in programming.
Serbian Ћ плус плусЋ плус плус (Serbian, "C plus plus") is a JavaScript like programming language based on Cyrillic script
Sinhala Ceylonicus Ceylonicus, the first Sinhala-based programming language:

Ceylonicus is an open-source, interpreted, and functional programming language designed to bridge the gap between English and Sinhala syntax within a unified codebase. As a Sinhala Programming Language, it empowers developers to express their ideas in both languages seamlessly. Ceylonicus is implemented in Python, and features a web-based environment, built using Brython.

Run Online (WEB IDE), Source Code Ceylonicus Source Code on GitHub
Spanish GarGarA procedural programming language based on Pascal for learning purposes. [20]
VainillaA pseudocode interpreter for Spanish that runs in the browser.
PSeInt A pseudocode interpreter for Spanish, like Pascal, with a completely Spanish-based syntax. PSeInt is an abbreviation for Pseudocode Interpreter.
QriolloAn impure strict functional programming language that compiles to C, Python, and JVM Bytecode, with keywords in Rioplatense Spanish, spoken in Buenos Aires.
Latino  [ es ]A language with a completely Spanish-based syntax.
A direct translation pseudo-language for coding in C and C++ with Spanish keywords.
Pauscal  [ es ]A language with a completely Spanish-based syntax; compiler for 32-bit Windows.
InformATE  [ es ]A translation of Inform, used for creating text-based games.
EsJSAn interpreted programming language with Spanish syntax, based on JavaScript. Website, Playground, Learn, esjs on GitHub
Swahili swapSwahili Programming Language; it is an educational programming language built over Nodejs, It was built as way to help Swahili speakers to easily grasp the concept of coding and programming in general.
Swedish Enkelt A language with a completely Swedish-based syntax. Transpiled to Python.
Tagalog BatoRuby translated into Tagalog. bato on GitHub
Tamil Ezhil Developed for educational purposes.
eTamilThe purpose of eTamil is to be an Indian DSL for Accounts & Fintech. eTamil on GitHub
SwaramA simple, general-purpose and procedural language. [21]
W languageHTML translation in Tamil language w language on GitHub
Turkish YakamozA Turkish implementation similar to that of Python.
Urdu UrduScriptA dialect of JavaScript.
Welsh Yr DraigA Welsh implimentation of Raku [22]
Yoruba YorlangBuilt on top of Node.js.
Various Logo In one of its Apple II editions, it was available in French. A version used in Bulgarian education with Bulgarian Apple II clones was translated in Bulgarian. LOGO for the Commodore 64 had an Italian localization.
4th Dimension On local versions, its internal language uses French or German keywords.
FOCAL Keywords were originally in English, but DEC produced versions of FOCAL in several European languages.
Mama An educational programming language and development environment, designed to help young students start programming by building 3D animations and games. It is currently available in English, Hebrew, Yiddish, and Chinese.
MS Word and MS Excel Their macro languages used to be localized in non-English languages.
ML4A language for client/server database programming, with keywords in English or German. [23]
RoboMind An educational programming language available in Arabic, Chinese, Dutch, English, French, German, Greek, Polish, Brazilian Portuguese, Spanish, Swedish, and Turkish.
Scratch An introductory visual programming language from MIT's Media Lab with support for programming in multiple languages included as standard.
Catrobat A visual programming language targeted at teenagers with support for more than 60 languages like Slovenian, Polish, Hindi, German, Romanian, Turkish, Norwegian, Akan, Twi, Hebrew, Chinese Simplified, Indonesian, Swedish, Chinese Traditional, Portuguese, Brazilian, Croatian, Bosnian, Thai, Japanese, Sindhi, Tamil, Swahili, Arabic, Persian, Korean, Serbian (Cyrillic), Serbian (Latin), Bengali, French, Slovak, Vietnamese, Italian, Macedonian, Russian, Portuguese, English, Canada, Czech, Sinhala, Azerbaijani, Kazakh, Dutch, Catalan, Albanian, Pashto, Gujarati, Finnish, Malay, Lithuanian, Malayalam, Danish, Hungarian, Afrikaans, Kannada, Greek, Bulgarian, Galician, Urdu (Pakistan), English, Australia, English, United Kingdom, Telugu, Ukrainian, Hausa and Igbo. on GitHub
TECO The programming language used to drive the actions of the TECO text editor. The MIT dialect of this language was used to program early versions of Emacs before its 1985 rewrite in Emacs Lisp.
TI-Calculator BASIC The 68000 version is localized. Various configuration strings are localized too, preventing direct binary compatibility.
Citrine Programming language that can be used to code in any native human language, includes a translator module to translate code from one human language to another. At the time of writing it supports English, Dutch, Lithuanian and Romanian.

Based on symbols instead of keywords

Modifiable parser syntax

Related Research Articles

<span class="mw-page-title-main">ALGOL</span> Family of programming languages

ALGOL is a family of imperative computer programming languages originally developed in 1958. ALGOL heavily influenced many other languages and was the standard method for algorithm description used by the Association for Computing Machinery (ACM) in textbooks and academic sources for more than thirty years.

<span class="mw-page-title-main">Programming language</span> Language for communicating instructions to a machine

A programming language is a system of notation for writing computer programs. Programming languages are described in terms of their syntax (form) and semantics (meaning), usually defined by a formal language. Languages usually provide features such as a type system, variables, and mechanisms for error handling. An implementation of a programming language is required in order to execute programs, namely an interpreter or a compiler. An interpreter directly executes the source code, while a compiler produces an executable program.

In computer science, control flow is the order in which individual statements, instructions or function calls of an imperative program are executed or evaluated. The emphasis on explicit control flow distinguishes an imperative programming language from a declarative programming language.

In a computer language, a reserved word is a word that cannot be used as an identifier, such as the name of a variable, function, or label – it is "reserved from use". This is a syntactic definition, and a reserved word may have no user-defined meaning.

An esoteric programming language is a programming language designed to test the boundaries of computer programming language design, as a proof of concept, as software art, as a hacking interface to another language, or as a joke. The use of the word esoteric distinguishes them from languages that working developers use to write software. The creators of most esolangs do not intend them to be used for mainstream programming, although some esoteric features, such as visuospatial syntax, have inspired practical applications in the arts. Such languages are often popular among hackers and hobbyists.

<span class="mw-page-title-main">Internationalization and localization</span> Process of making software accessible to people in different areas of the world

In computing, internationalization and localization (American) or internationalisation and localisation (British), often abbreviated i18n and l10n respectively, are means of adapting computer software to different languages, regional peculiarities and technical requirements of a target locale.

In computer programming, a block or code block or block of code is a lexical structure of source code which is grouped together. Blocks consist of one or more declarations and statements. A programming language that permits the creation of blocks, including blocks nested within other blocks, is called a block-structured programming language. Blocks are fundamental to structured programming, where control structures are formed from blocks.

In computing, gettext is an internationalization and localization system commonly used for writing multilingual programs on Unix-like computer operating systems. One of the main benefits of gettext is that it separates programming from translating. The most commonly used implementation of gettext is GNU gettext, released by the GNU Project in 1995. The runtime library is libintl. gettext provides an option to use different strings for any number of plural forms of nouns, but this feature has no support for grammatical gender. The main filename extensions used by this system are .POT, .PO and .MO.

<span class="mw-page-title-main">ALGOL 68</span> Programming language

ALGOL 68 is an imperative programming language that was conceived as a successor to the ALGOL 60 programming language, designed with the goal of a much wider scope of application and more rigorously defined syntax and semantics.

In computer programming, a directive or pragma is a language construct that specifies how a compiler should process its input. Depending on the programming language, directives may or may not be part of the grammar of the language and may vary from compiler to compiler. They can be processed by a preprocessor to specify compiler behavior, or function as a form of in-band parameterization.

An expression-oriented programming language is a programming language in which every construction is an expression and thus yields a value. The typical exceptions are macro definitions, preprocessor commands, and declarations, which expression-oriented languages often treat as statements.

In computer programming, a sigil is a symbol affixed to a variable name, showing the variable's datatype or scope, usually a prefix, as in $foo, where $ is the sigil.

In computer programming languages, a switch statement is a type of selection control mechanism used to allow the value of a variable or expression to change the control flow of program execution via search and map.

GOST refers to a set of international technical standards maintained by the Euro-Asian Council for Standardization, Metrology and Certification (EASC), a regional standards organization operating under the auspices of the Commonwealth of Independent States (CIS).

In computer language design, stropping is a method of explicitly marking letter sequences as having a special property, such as being a keyword, or a certain type of variable or storage location, and thus inhabiting a different namespace from ordinary names ("identifiers"), in order to avoid clashes. Stropping is not used in most modern languages – instead, keywords are reserved words and cannot be used as identifiers. Stropping allows the same letter sequence to be used both as a keyword and as an identifier, and simplifies parsing in that case – for example allowing a variable named if without clashing with the keyword if.

The following outline is provided as an overview of and topical guide to computer programming:

<span class="mw-page-title-main">Rostest</span>

Rostest is the largest organization of practical metrology and certification in the Russian Federation. Rostest attempts to ensure uniformity of measurements in industry, health care, communication systems, trading, military defense, and resource counting as well as environmental protection and other economic activities.

Citrine is a general-purpose programming language for various operating systems. It focuses on readability and maintainability. Readability is achieved by syntactic and conceptual minimalism. The language is heavily inspired by Smalltalk and Self but has some very distinctive features. Like Smalltalk, Citrine treats everything as an object and focuses on sending messages to these objects. However, unlike Smalltalk, Citrine lacks the concept of a class. In this regard, Citrine is more like Self and JavaScript because it uses prototypes. The combination of Smalltalk-like messages and prototypes is what makes Citrine unique.

References

  1. In HOPL (History of Programming Languages), advanced search finds languages by country.
  2. "GOST 27974-88 Programming language ALGOL 68 – Язык программирования АЛГОЛ 68" (PDF) (in Russian). GOST. 1988. Archived from the original (PDF) on March 24, 2017. Retrieved November 15, 2008.
  3. "GOST 27975-88 Programming language ALGOL 68 extended – Язык программирования АЛГОЛ 68 расширенный" (PDF) (in Russian). GOST. 1988. Retrieved November 15, 2008.
  4. "Hedy" . Retrieved 2024-09-22.
  5. Jacques Perrin, Conception entre science et art. Regards multiples sur la conception, Presses polytechniques et universitaires romandes
  6. "Hello world: Meet قلب, a programming language based on Arabic script". 25 January 2013.
  7. "Arabnet | Kalimat: First Arabic Programming Language for Kids".
  8. IA eng (PDF).
  9. ChaScript: Breaking the language barrier using Bengali programming system, IEEE, doi:10.1109/ICECE.2014.7026875, S2CID   39503002 .
  10. Labelle, Marcel, Les langages de programmation (PDF).
  11. Spip documentation team, Language glossary .
  12. Rouille language homepage, 6 June 2022.
  13. Katagiri, Akira. 1 Mindのしくみと特徴 [Mind – its mechanism and features]. Scripts Lab (in Japanese). Retrieved 2021-07-31. (rough translation): Mind uses FORTH's mechanism. Even though FORTH was born in America, its grammar is similar to Japanese grammar.
  14. Tarui, Hideto (2020-09-17). 日本語で書けちゃうプログラミング言語「なでしこ」が中学の教科書に採用! [Japanese programming language "Nadeshiko" adopted in a junior high textbook!]. WINDOWS FOREST (IT news site) (in Japanese). Impress Corporation. Retrieved 2021-07-31.
  15. 令和3年度中学校教科書 [2021 technical arts textbook for junior high school]. Kyoiku tosho corporate website (in Japanese). Archived from the original on 2021-06-25. Retrieved 2021-07-31.
  16. "Aheui", Esolang (wiki).
  17. Corbett, Jon (2023-07-20). "ᐊᒐᐦᑭᐯᐦᐃᑲᓇ ᒫᒥᑐᓀᔨᐦᐃᒋᑲᓂᐦᑳᓂᕽ | acahkipehikana mâmitoneyihicikanihkânihk | Programming with Cree# and Ancestral Code: Nehiyawewin Spirit Markings in an Artificial Brain". Digital Humanities Quarterly. 017 (2). ISSN   1938-4122.
  18. Husberg, Nisse; Seppänen, Jouko (1974), "Analitik", ACM SIGSAM Bulletin, 8 (3), ACM: 24–25, doi: 10.1145/1086837.1086841 , S2CID   510819 .
  19. Эль-76, Кірыліца ў сеціве.
  20. Manual del lenguaje GarGar [GarGar Manual] (in Spanish), archived from the original on November 5, 2016.[ permanent dead link ]
  21. Ganesh (PDF), Infitt, 2003.
  22. "Creating a new programming language - Draig". DEV Community. 2024-01-15. Retrieved 2024-12-02.
  23. C/S Entwicklungsumgebung ML4, ML-Software.
  24. "The Brainfuck Programming Language". Muppetlabs.com. Retrieved 2013-10-30.
  25. Temkin (August 2015). "Light Pattern: Writing Code with Photographs". Leonardo. 48 (4): 375–381. doi:10.1162/LEON_a_01091. S2CID   57571969.
  26. Cook, William R. (2007). "Apple Script". Proceedings of the third ACM SIGPLAN conference on History of programming languages. doi:10.1145/1238844.1238845. ISBN   9781595937667. S2CID   220938191 via ResearchGate.
  27. Language Design in Maude, by Matthias, 2006/06/05, LShift Ltd.

Sources