Non-English-based programming languages

Non-English-based programming languages

Non-English-based programming languages are computer programming languages that, unlike better-known programming languages, do not use keywords taken from, or inspired by, the English vocabulary.

Contents

Prevalence of English-based programming languages

There has been an overwhelming trend in programming languages to use the English language to inspire the choice of keywords and code libraries. According to the HOPL online database of languages,[1] out of the 8500+ programming languages recorded, roughly 2400 of them were developed in the United States, 600 in the United Kingdom, 160 in Canada, and 75 in Australia.

In other words, over a third of all programming languages were developed in an English-speaking country. This does not take into account the usage share of each 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), and situations where it was based on another language which used English (see the case of Caml, developed in France but using English keywords).

International programming languages

ALGOL 68's standard was published in numerous languages, and the standard allowed the internationalisation of the programming language itself.

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 made 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[2]
  • GOST 27975-88 Programming language ALGOL 68 extended - Язык программирования АЛГОЛ 68 расширенный[3]

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

Based on non-English languages

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 a compiler fit in fewer than 256 bytes. Its predecessor P′′ used to prove assertions about structured programming languages and also used symbols.
  • FALSE – A stack-based minimalist esoteric programming language with syntax consisting mainly of single non-alphanumeric characters
  • Piet – An art-based esoteric programming language
  • Plankalkül – An early language, which uses a symbolic tabular notation, developed by German computer pioneer Konrad Zuse
  • Velato – An esoteric language whose commands are determined by the sequence of notes in a MIDI file
  • Whitespace – An esoteric language based on whitespace characters (spaces, tabs, and line breaks)

Modifiable parser syntax

  • Babylscript – A multilingual version of JavaScript which uses multiple tokenizers to support localized keywords in different languages and which allows objects and functions to have different names in different languages
  • ChinesePython – A complete translation of the Python scripting language into Chinese
  • Component Pascal – A preprocessor that translates native-language keywords into English in an educational version of the BlackBox Component Builder available as open source from http://www.inr.ac.ru/~info21/software.htm. The translation is controlled via a modifiable vocabulary and supported by modifiable compiler error messages. A complete Russian version is used in education, and it should be possible to accommodate other left-to-right languages (e.g. the Kabardian language has been tried as a proof of concept).
  • HyperTalk – A programming language, which allows translation via custom resources, used in Apple's HyperCard
  • Macintosh AppleScript – A language once allowed for different "dialects" including French and Japanese; however, these were removed in later versions
  • Maude - Completely user definable syntax and semantics, within the bounds of the ASCII character set[4]
  • Perl – While Perl's keywords and function names are generally in English, it allows modification of its parser to modify the input language, such as in Damian Conway's Lingua::Romana::Perligata module, which allows programs to be written in Latin or his Lingua::tlhInganHol::yIghun Perl language in Klingon. They do not just change the keywords but also the grammar to match the language.
  • Protium – A language designed to support any possible human language

References

Sources

External links


Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать курсовую

Look at other dictionaries:

  • List of Chinese programming languages — In the early 1970s, Chinese programming languages, which incorporate written Chinese in their syntax, were developed to offer languages that are easier to learn and use for non English speaking Chinese. Major examples Chinese BASIC Easy… …   Wikipedia

  • List of programming languages by category — Programming language lists Alphabetical Categorical Chronological Generational This is a list of programming languages grouped by category. Some languages are listed in multiple categories. Contents …   Wikipedia

  • Lists of programming languages — There are thousands of computer programming languages. These are listed in various ways:*Timeline of programming languages *List of programming languages by category ndash; by general usage and context *Generational list of programming languages… …   Wikipedia

  • Class-based programming — Programming paradigms Agent oriented Automata based Component based Flow based Pipelined Concatenative Concurrent computin …   Wikipedia

  • Programming paradigm — Programming paradigms Agent oriented Automata based Component based Flow based Pipelined Concatenative Concu …   Wikipedia

  • Programming language — lists Alphabetical Categorical Chronological Generational A programming language is an artificial language designed to communicate instructions to a machine, particularly a computer. Programming languages can be used to create programs that… …   Wikipedia

  • History of programming languages — This article discusses the major developments in the history of programming languages. For a detailed timeline of events, see the timeline of programming languages. History of Programming Languages The first programming languages predate the… …   Wikipedia

  • Automata-based programming — is a programming paradigm in which the program or its part is thought of as a model of a finite state machine or any other (often more complicated) formal automata (see automata theory). Sometimes a potentially infinite set of possible states is… …   Wikipedia

  • FOCAL (programming language) — FOCAL, (abbreviation of FOrmula CALculator), is an interpreted programming language resembling JOSS.Largely the creation of Richard Merrill, FOCAL was initially written for and had its largest impact on the Digital Equipment Corporation s (DEC s) …   Wikipedia

  • Object-oriented programming — Programming paradigms Agent oriented Automata based Component based Flow based Pipelined Concatenative Concurrent computing …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”