Talk:List of programming languages

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
WikiProject Computing (Rated List-class)
WikiProject iconThis article is within the scope of WikiProject Computing, a collaborative effort to improve the coverage of computers, computing, and information technology on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
 List  This article has been rated as List-Class on the project's quality scale.
WikiProject Lists (Rated List-class)
WikiProject iconThis article is within the scope of WikiProject Lists, an attempt to structure and organize all list pages on Wikipedia. If you wish to help, please visit the project page, where you can join the project and/or contribute to the discussion.
 List  This article has been rated as List-Class on the project's quality scale.


I believe numpy should not be on this list considering that it is a library for python and cannot be used on its own. From, "NumPy is the fundamental package for scientific computing with Python".

AlexBenishek (talk) 19:57, 23 March 2017 (UTC)

Torp - is this actually a programming language?[edit]

This does not seem to be a programming language at all. I'm a little bit hesitant to remove it from this list for some reason, but if it is to remain, its presence here needs to be justified and the link fixed. --Joel7687 (talk) 05:12, 7 March 2010 (UTC)

Surely any language listed here needs to be Turing complete? (CSS is not) Otherwise the page would get flooded with inappropriate content. Nick mesham (talk) 19:07, 10 May 2010 (UTC)


The article dedicated to 4D describes it as "a relational database management system and IDE". Should this really be considered a programming language? (talk) 09:29, 28 May 2010 (UTC)

I'd agree, this is primarily a database product; its language appears seems to be more of an SQL than a programming language. Unless somebody disagrees, I'll remove it in a day or three. Nibios (talk) 14:40, 6 June 2010 (UTC)

Assembly language(s)[edit]

I propose that we replace the list of individual assemblers with a generic assembly language entry. Otherwise the list needs to be expanded to include (among others) the Motorola 6800, Intel 8080/8085, Zilog Z80 (different assembly language from the 8080 despite binary compatibility), IBM 7090, Data General Nova/Eclipse, etc, etc. In other words, it would become a laundry list of processors. Nibios (talk) 14:54, 6 June 2010 (UTC)

In fact it would be worse than that, since assembly is not machine code, we should have the machine codes as well. Rich Farmbrough, 16:04, 10 February 2011 (UTC).

Make is a language[edit]

Make is a language. The article about make says "The make language is similar to declarative programming." So it should probably be added to the list of programming languages. —Preceding unsigned comment added by (talk) 18:19, 3 September 2010 (UTC)

YesY Done Mark Hurd (talk) 20:26, 18 June 2011 (UTC)

Arduino is not a language[edit]

Arduino is not a language. It's a development/prototyping platform that uses C or C++. —Preceding unsigned comment added by (talk) 22:36, 28 December 2010 (UTC)

Crystal Clear action edit remove.png Removed Mark Hurd (talk) 20:34, 18 June 2011 (UTC)

DEC- DAL (Digital Authoring Language)?[edit]

I am not sure if this qualifies as an "esoteric" language, but I worked with it in the early '80s. On this site:

I found the abstract below. Since it is a catalog, I believe there are no copyright issues.

Abstract: VAX DAL (Digital Authoring Language) is a powerful, easy to learn authoring language designed for developing computer-based instruction.

VAX DAL is a high level programming language designed expressly for computer-based instruction. Some major aspects of the language are: logging of lesson performance information, screen addressing, full integration of graphics, and special response judging capabilities, including a spelling algorithm.

VAX DAL has various response judging capabilities which can be incorporated into the lesson by the author. The author can:

- Control whether or not spelling, punctuation or capitalization must be exactly as specified in the response. 
- Indicate whether or not extra words can be entered in the response. 
- Specify that the words in the response can be in any order, as long as all of the words are present. 
- Define multiple right and wrong answers, each with a different logic path. 
- Specify that the response will be an expression, which will be evaluated during the response judging process. 

Any of these attributes can be altered on a question by question basis.

Digital's DAL was based on the Tutor language developed by the University Of Illinois for the PLATO Computer Aided Education system which ran on CDC systems. — Preceding unsigned comment added by (talk) 17:40, 16 June 2013 (UTC)

Weallcock (talk) 21:10, 30 March 2011 (UTC)

Is Speed II esoteric?[edit]

I designed applications in 1987-1990 for WANG VS using SPEED II. It was a 4GL which was also ported onto Unix. I am nor sure of the language's history after 1990. APPX retired their SPEED II product line in 2007 - see —Preceding unsigned comment added by (talk) 06:40, 7 April 2011 (UTC)

Programming languages versus markup languages[edit]

- CSS is a programming language? And SQL no? Valugi (talk) 11:34, 1 September 2009 (UTC)

- and what makes CSS better then HTML? CSS is a styling sheets. gute1  10:44, 4 October 2009 (UTC)

I agree: HTML, XML, XHTML, and CSS seem to be conspicuously absent from this list. I'm adding them. Kaiserkarl13 (talk) 02:16, 12 July 2011 (UTC)

This has come up a few times before. Most people feel that there's a significant difference between a programming language and a markup language. Things like HTML and CSS are definitely markup languages not programming languages. TeX occupies an interesting position: it's often used as if it were a markup language, but it's capable of doing computations and is Turing-complete, so it's also listed as a programming language. Jowa fan (talk) 03:47, 12 July 2011 (UTC)

Algebraic modeling language[edit]

The first line of Algebraic modeling language calls them "high-level computer programming languages". As such, I'm undoing the undocumented deletion of AMPL by (talk). Mark Hurd (talk) 06:21, 16 April 2012 (UTC)

Bill Kinnersley's list[edit]

I would provide the list of Bill Kinnersley:

I hope that it helps. Szalakóta (talk) 18:32, 7 October 2012 (UTC)

Should the "Visual xxx" implementations, or implementations in general, be included in this list?[edit]

There are a number of language implementations included in this list, for example Microsoft Visual C++ (which is the page for the MS product) or Visual Fortran (which redirects to Fortran). Should those be included? Various other C/C++ compilers (GCC, LCC, LccWin, ICC, etc.), for example, do not have entries here. I think these should be removed, with the obvious exception of languages where the implementation is not really distinct from the language itself. Rwessel (talk) 03:20, 19 December 2012 (UTC)

Machine Code?[edit]

Is machine code actually a programming language? Most languages are compiled to binary, but does it actually constitute a language itself? I'd say not. Assembly language is listed also. — Preceding unsigned comment added by Prince of Strings (talkcontribs) 16:59, 14 March 2013 (UTC)

Pretty clearly it should. As Machine code says "Numerical machine code (i.e. not assembly code) may be regarded as the lowest-level representation of a compiled and/or assembled computer program or as a primitive and hardware-dependent programming language." And very many languages are not compiled to binary, but are interpreted instead, so that's clearly not a requirement. Rwessel (talk) 07:10, 15 March 2013 (UTC)
No, it's not a programming language, it's merely a machine encoding. We might as well list the alphabet since most programming use letters to make up their keywords. Msnicki (talk) 13:49, 8 May 2013 (UTC)
I would say that assembly and machine code should be considered a programming language. There are multiple dialects for assembly and machine code, mostly catering towards different processors, but this was the case with BASIC as well, often catering towards different purposes or target architectures/machines/purposes. Machine code doesn't require compilation, and it is interpreted directly by the machine, but in theory, it is possible to make an interpreter for any theoretical programming language that has ever existed on any computer that supports that language's computational complexity level (e.g. NP can run P, but P cannot run NP).
According to the article Programming Language, the first paragraph under the section Definitions reads:

A programming language is a notation for writing programs, which are specifications of a computation or algorithm. Some, but not all, authors restrict the term "programming language" to those languages that can express all possible algorithms.

The 1's and 0's are an obvious notation for a program under this definition, and although it might not be as human readable, it still is a programming language in this sense. Those 1's and 0's notate a series of instructions for that computer's processor, which is much like commands for a shell script or a series of methods executed in a program written in C. The difference is the level of abstraction, where C++ has a moderate level of abstraction and JavaScript a high level while machine code has next to none and assembly has just enough to not require the programmer to memorize all the 1's and 0's of several different target environments (only a common set of dialects for most common processors).
Also, machine code was the only way to program computers for decades until the advent of the first usable programming languages and was still the primary way until assembly language was introduced (and that was the primary way for everything until C).
This is why I believe machine code should be included. impinball (talk) 22:55, 17 March 2014 (UTC)

Non-procedural Languages?[edit]

My recent addition of Hartmann pipelines to the list was reverted with the statement that "Hartmann pipelines are not a programming language". I disagree. Pipelines is a perfect example of non-procedural, or functional, programing.
---dav4is (talk) 10:57, 8 May 2013 (UTC)

I reverted your addition with that edit summary. Hartmann pipelines are a specification language not a programming language. They're a variation on Unix pipelines that offer additional functionality. But they're not a whole language. There are no provisions for iteration, condition-testing, etc., that you'd expect in a whole language. Basically, it's just a feature that got added to IBM CMS. We might as well list regular Unix pipelines as a programming language distinct from the Unix shells that implement them and we don't do that, either. Msnicki (talk) 14:00, 8 May 2013 (UTC)

C-family languages[edit]

I know that there aren't nearly as many languages that are considered "C-family" as there are BASIC dialects, but should they merit their own distinct list? Examples of entries include C, C++, and Objective C. impinball (talk) 21:36, 17 March 2014 (UTC)

I'd say not. At the end of the day C and C++ are fairly radically different languages, whereas most Basic dialects tend to share more of a core. I suspect that such a list would end up somewhat like List of C-based programming languages, and while it's something of a judgment call, I'd say that the languages in that (fairly short, at least compared to the Basic list) list share far less than do most of the Basic dialects. In any event, the major reason for the separate Basic list is that there are just so darn many. Rwessel (talk) 03:35, 18 March 2014 (UTC)

Scratch by MIT is a huge coding language. It' needs to be added[edit]

This coding language is huge. It's founder Mitchel Resnick got to do a Ted Talk. There is world Scratch day with almost every users from almost every country in the world. There are users from every continent in the world except Antarctica. There is users from every state in the US. There is over 100+ events held on a single day every year called Scratch day. There was a Scratch day held in every state in America. A day were Scratchers meet together to host Scratch days. I held an event in my town. My event was the first Scratch day in my town. I live in Colorado and the nearest event was at a school in Aurora near the state capital Denver. The statistics on there site says that there is over 3 million users who have joined the site over the 6 years the site has existed. It also says there is over 6 million projects created with the coding language. These statistics are updated daily and are 100% correct because the coding language can only be used online or through the offline editor which captures data when you go online. Scratch has it's own wiki with tons of wiki contributors as well. Please add this coding language as Scratch under the S section in the alphabetical list. — Preceding unsigned comment added by Greshthegreat (talkcontribs) 16:20, 10 August 2014 (UTC)

Am I missing something? It's already there. Rwessel (talk) 17:00, 10 August 2014 (UTC)

SQL is a Programming Language[edit]

The SQL Wiki page even says "SQL is a special-purpose programming language designed for managing data held in a relational database management system (RDBMS)." We have other special-purpose languages like AWK listed, so why not SQL?

Derektom14 (talk) 03:20, 13 August 2014 (UTC)

I agree.
It has variables, flow control statements, user defined functions and so on. It's a programming language rather than GPSS. --Kissg (talk) 12:33, 15 September 2016 (UTC)
I agree. I added it. Enterprisey (talk!) 20:42, 3 January 2017 (UTC)

Delphi entry?[edit]

Either Delphi (which is rather an IDE?) should be referred as Object Pascal, either it should be removed if it considered to be a n IDE, not a Pascal dialect. — Preceding unsigned comment added by (talk) 07:06, 4 November 2014 (UTC)

There already is an entry for Object Pascal, which is distinct from the entry for Delphi (programming language). Borland/Embarcadero (and users) commonly use the term "Delphi" in either context, for both the IDE and for that particular dialect of Object Pascal. So it's a bit of a mess, but leaving both entries in place seems like the best choice. Rwessel (talk) 14:46, 4 November 2014 (UTC)

PCBoard Programming Language (aka PPL)[edit]

I think community standards prevent me from adding this language, as I was the principle author, but the PCBoard Programming Language (referenced at PCBoard) provided a means to modify / enhance the BBS. It was compiled to a tokenized / "byte code" format which was then interpreted by the runtime embedded in the BBS. CasaDeRobison (talk) 20:10, 19 February 2015 (UTC)

I think this is something of a borderline case. The general rule is that the languages need to be notable enough that they have their own article on Wikipedia, before being in this list, but we do have a number of exceptions where a language was a part of something else that has an article (see Game Maker Language, for example). But we're not listing every product that had some ad-hoc programming language in it. PPL appears to be a modest part of PCBoard, unlike GML which at least is a major part of GameMaker. So I'm not really convinced that this PPL (there's another PPL on the list already) is really appropriate to list here. Rwessel (talk) 21:13, 19 February 2015 (UTC)
Fair enough. I personally think it is worthy of inclusion based on various factors, but as I indicated originally, I'm not going to include it myself. That being said, 99 Bottles of Beer [1] can't be wrong about what PPL stands for. ;) CasaDeRobison (talk) 05:16, 20 February 2015 (UTC)
Why not present your arguments for inclusion? Doesn't mean we'll reach consensus to actually include it, but it certainly improves the odds over simply saying "I think it should be". Rwessel (talk) 05:34, 20 February 2015 (UTC)

Proposed edit filter for HTML[edit]

I propose that we make a new edit filter preventing people from adding "HTML" to this list. There have been a large number of edits over the past few years adding it (Dec, twice in August, three times in May, twice more in April, and once in January, and that's just 2018). It's just getting to be a waste of time at this point. Pinging a couple of people who've recently reverted HTML edits: Jpgordon and General Ization. Enterprisey (talk!) 04:27, 13 December 2018 (UTC)

Shrug. It's easy enough to revert, and doesn't actually do any harm in the meantime. 9 problematic edits in one year? Its what watchlists are for. --jpgordon𝄢𝄆 𝄐𝄇 06:32, 13 December 2018 (UTC)
Concur. General Ization Talk 13:06, 14 December 2018 (UTC)

Add either TinyMUSH or MUSHcode[edit]

See MUSH, "The programming language for MUSH, usually referred to as "MUSHcode" or "softcode" (to distinguish it from "hardcode" – the language in which the MUSH server itself is written) was developed by Larry Foard. TinyMUSH started life as a set of enhancements to the original TinyMUD code. "MUSHcode" is similar in syntax to Lisp." — Preceding unsigned comment added by 2601:600:8080:1C5C:6465:AFC8:AC93:D648 (talk) 04:44, 10 April 2019 (UTC)


the Náni link is to a page on the Norse god, not to the code language. — Preceding unsigned comment added by (talkcontribs) 15:51, 18 September 2020 (UTC)

I see no Náni link on this page, and Nani does not mention any Norse god. Could you give us a hint about what you are talking about? --Guy Macon (talk) 13:05, 22 September 2020 (UTC)


(Copied from my talk page)

Hi Guy, I saw you deleted DAML in the list of programming languages. I suppose I should write here in your watchlist section

DAML is not an API to JSON. It’s a smart contract language like solidity (since that one is already in the list). You can interact with a ledger that runs smart contracts using JSON but that has nothing to do with DAML as a language. Hope this explains the reasoning further. — Preceding unsigned comment added by Andreolf1 (talkcontribs) 08:26, 22 September 2020 (UTC)

So, is he right? Are smart contract languages computer languages, or are they more like markup languages?
The smart contract article lists:
Does the Bitcoin scripting language have a name?
Ethereum looks like a cryptocurrency platform (It has a scripting language. Does that scripting language have a name?)
Ripple looks like a payment protocol, not a computer language.
Solidity looks like a computer language to me.[2]
EOS.IO looks like a a blockchain protocol.
Tezos is... I am not quite sure what Tezos is.
--Guy Macon (talk) 12:53, 22 September 2020 (UTC)

Wow, above my pay grade. I am pretty sure that Ethereum doesnt have a language, and that Solidity is a language that is used on Ethereum. @Ladislav Mecir: and @N2e: care to comment? Jtbobwaysf (talk) 16:21, 23 September 2020 (UTC)

I will abstain from the question as to DAML specifically, as I am unfamiliar with that language. But I will answer Guy Macon's question more generally about smart contract languages. While not necessarily true for all smart contract languages, any smart contract language that runs on a Turing complete computing machines (as Ethereum does, and I believe EOS does; while the bitcoin scripting language is not, as the Bitcoin protocol and network is not Turing complete), would definitely be validly considered a programming language. Ethereum has had, and currently had, multiple programming languages used to write smart contracts that run on the Ethereum EVM; including Solidity, LLL (Low-level LISP-like language), Serpent (now dead, I believe), Vyper, and others I believe) Some of those languages are used to write smart contract on other smart contract-capable blockchains, but I don't have a cross-reference list that clarifies all that. Hope that helps. N2e (talk) 21:47, 25 September 2020 (UTC)
Thanks to both of you. Very helpful. --Guy Macon (talk) 22:22, 25 September 2020 (UTC)


The Tezos smart contract language is called Michelson. --Ysangkok (talk) 15:36, 17 October 2020 (UTC)

"Programming language" vs "markup language"[edit]

This is the wrong question to ask, because none of them are really designed for markup. Some of them are, indeed designed for non-turing completeness. A non-turing complete language can be embedded (as a DSL) in a turing complete language, by one definition of "language".

Some non-turing complete languages (some alternatives to Solidity) can compile to platforms that are turing-complete (like EVM).

There are also languages that compile to Bitcoin script (which is the name of the Bitcoin "smart contract" language). See BitML. --Ysangkok (talk) 15:42, 17 October 2020 (UTC)