ArticleslgStudy

computer science

Non-English-based programming languages

Non-English-based programming languages is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Non-English-based programming languages rather than just read about it. In short: Non-English-based programming languages are programming languages that do not use keywords taken from or inspired by English vocabulary. Prevalence of English-based programming languages The use of the English language in the inspiration for the choice of elements, in particular for reserved words (keywords) in computer programming languages and code libraries, represents a significant trend in the history of langua…

Key takeaways

  • Non-English-based programming languages belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Non-English-based programming languages to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Non-English-based programming languages from memory before moving on to harder problems.

Reference excerpt

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

Prevalence of English-based programming languages

The use of the English language in the inspiration for the choice of elements, in particular for reserved words (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, 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 account for 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. ALGOL 68 went on to become the GOST/ГОСТ-27974-88 standard in the Soviet Union.

GOST 27974-88 Programming language ALGOL 68 – Язык программирования АЛГОЛ 68 GOST 27975-88 Programming language ALGOL 68 extended – Язык программирования АЛГОЛ 68 расширенный 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, 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.

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.

GTlang GTLang – a multilingual programming language designed to allow code to be written and read using native languages rather than primarily English keywords. It supports localized syntax and multiple natural language keyword sets, making it accessible to learners and users familiar with languages such as Spanish, French, Russian, and Japanese. Official documentation and source code are available on the GTLang website and GitHub.

UniversalPython UniversalPython is an experimental multilingual programming language designed to allow programs written in a Python-like syntax to be transpiled into almost any natural human written languages. The project aims to reduce the dependency on English keywords in programming by enabling code translation into various written languages while maintaining compatibility with Python-style semantics. The language and its tooling are available as open-source software on GitHub.

Based on non-English languages

Based on symbols instead of keywords APL – A language based on mathematical notation and abstractions. Brainfuck – A minimalist esoteric programming language, created for the purpose of having the smallest possible compiler. Emojicode – An esoteric language based on Emojis. G – Graphical language used in LabVIEW (not to be confused with G-code). Hoon – A systems programming language for Urbit, compiling to Nock. J – An APL-like language which uses only ASCII special characters and adds function-level programming. Light Pattern – A language which uses a series of photographs rather than text as source code. Mouse – A minimalist language created by Peter Grogono which uses ASCII characters for keywords. Piet – An art-based esoteric programming language. Plankalkül – The first high-level non-von Neumann programming language, designed by Konrad Zuse during World War II in Germany. Whitespace – An esoteric language based on whitespace characters (spaces, tabs, and line breaks).

… excerpt ends here. Continue reading the full article.

Worked examples

Example 1 — a first encounter with Non-English-based programming languages

Start with the simplest possible case. Write down what Non-English-based programming languages claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Non-English-based programming languages before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Non-English-based programming languages ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Non-English-based programming languages

In research
Non-English-based programming languages appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Non-English-based programming languages in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Non-English-based programming languages is common in secondary-school and first-year university syllabi. It links to neighbouring topics Lists of programming languages, Natural language and computing, Non-English-based programming languages, so understanding it makes those chapters shorter.
In everyday life
Look for Non-English-based programming languages outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Non-English-based programming languages in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Non-English-based programming languages means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Non-English-based programming languages out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Non-English-based programming languages in simple terms?

Non-English-based programming languages are programming languages that do not use keywords taken from or inspired by English vocabulary. Prevalence of English-based programming languages The use of the English language in the inspiration for the choice of elements, in particular for reserved words…

Why does Non-English-based programming languages matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Non-English-based programming languages?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Non-English-based programming languages.

Tags

  • Lists of programming languages
  • Natural language and computing
  • Non-English-based programming languages

Keep exploring