Content deleted Content added
→ASP?: new section |
→Ada Lovelace: new section Tags: Disambiguation links added New topic |
||
(45 intermediate revisions by 25 users not shown) | |||
Line 1:
{{WikiProject
{{WikiProject Computing|importance=Mid}}
}}
{{archives}}
Line 17 ⟶ 19:
:here? https://upload.wikimedia.org/wikipedia/commons/2/25/Genealogical_tree_of_programming_languages.svg [[Special:Contributions/89.76.146.175|89.76.146.175]] ([[User talk:89.76.146.175|talk]]) 01:06, 27 March 2014 (UTC)
::Even more detailed picture here: http://hopl.info/images/genealogies/tester-country.jpg [[User:Pasvikdalen|Pasvikdalen]] ([[User talk:Pasvikdalen|talk]])
== Inclusion of yet another language LSS or Lotus Script ? ==
Line 48 ⟶ 52:
perl6? [[Special:Contributions/73.162.49.184|73.162.49.184]] ([[User talk:73.162.49.184|talk]]) 03:44, 26 February 2016 (UTC)
{{reflist-talk}}
Line 75 ⟶ 81:
== ASP? ==
what about ASP or ASP.net(not a website)? <!-- Template:Unsigned IP --><small class="autosigned">— Preceding [[Wikipedia:Signatures|unsigned]] comment added by [[Special:Contributions/174.83.19.46|174.83.19.46]] ([[User talk:174.83.19.46#top|talk]]) 20:29, 20 February 2018 (UTC)</small> <!--Autosigned by SineBot-->
== Jacquard Loom ==
The current noun is of course the machine, not any language.
From what I understand the 'card format'-as such would in modern computing terms be machine code. One where the pattern on the card correspond physically to the intended weave pattern.
Question is, was there a single format, or different ones for different machines at different times? Does this format have a proper term? I also think that if there's a large abstraction threshold between these format or formats and the rest of the items on this timeline it should be mentioned.--[[User:Nngnna|Nngnna]] ([[User talk:Nngnna|talk]]) 14:57, 18 October 2019 (UTC) [edited for clarity 6:17, 14 November 2019 (UTC)]
== GDScript ==
GDScript was probably born around between 2010 and 2014 and it's based on Python.
It's difficult to be more precise since it has been developed inside a company that was using it for internal purposes and on the project website they talk about its history but there is no mention of specific years. One of its creators, Juan Linietsky, said that they had been using other scripting languages "for ten years" and then they decided to write a language of their own.
: https://rmll.ubicast.tv/videos/introduction-au-moteur-godot/ (go to 41m00s) <!-- Template:Unsigned IP --><small class="autosigned">— Preceding [[Wikipedia:Signatures|unsigned]] comment added by [[Special:Contributions/2001:B07:6453:BBAD:855F:E0B8:62DA:3603|2001:B07:6453:BBAD:855F:E0B8:62DA:3603]] ([[User talk:2001:B07:6453:BBAD:855F:E0B8:62DA:3603#top|talk]]) 23:03, 23 October 2019 (UTC)</small> <!--Autosigned by SineBot-->
== Short Code ==
Why is Short code listed with different authors in both 1949 and 1950. And what is Brief Code, the predecessor of the second time Short Code is listed? [[User:Akeosnhaoe|Akeosnhaoe]] ([[User talk:Akeosnhaoe|talk]]) 07:24, 6 January 2020 (UTC)
== Language Versions ==
I was wondering what the consistency between updates to languages is? For example, all the changes to C and C++ seem to be listed as separate entries, but even major changes to other languages, such as Python 2 to Python 3, or Java 1.4 to Java 5 don't seem to be treated in the same way. [[Special:Contributions/2A00:23C4:4EA8:1801:5050:740F:833E:891B|2A00:23C4:4EA8:1801:5050:740F:833E:891B]] ([[User talk:2A00:23C4:4EA8:1801:5050:740F:833E:891B|talk]]) 15:14, 14 March 2021 (UTC)
: I think entries for Python 3 and Java 5 could be listed. I'm not sure of the exact inclusion criteria, see next section --[[User:Mathnerd314159|Mathnerd314159]] ([[User talk:Mathnerd314159|talk]]) 03:34, 22 August 2021 (UTC)
== Changing criteria to notability ==
"Historically significant" is hard to prove and the inclusion criteria the list actually uses seems different, for example C99 is not particularly historically relevant as for the most part it just copied features from C++. What does everyone think about changing the criteria to ''notable'' programming languages? Notability is easy to verify compared to historical significance. I don't think the table will grow too much due to this change but if it does we can just split the table across several pages. --[[User:Mathnerd314159|Mathnerd314159]] ([[User talk:Mathnerd314159|talk]]) 03:34, 22 August 2021 (UTC)
: C99 is very historically relevant, if only for the fact many large projects still use this particular dialect. This list should only include languages that break compatibility, otherwise you will end up with the current mess where you have some languages listed multiple times even though they are backwards compatible dialects and others not listed even though they are not backwards compatible.
: To show the absurdity: Java is only included once despite huge changes to the bytecode. Python even though there are multiple backwards incompatible versions. Meanwhile C and C++ are listed multiple times, even though they are only standard changes, and compatible ones at that. Rather than including a new version every major change (which is somewhat arbitrary) the criteria should be whether previous application binary interfaces are broken (can I write C++03 code with a C++20 compiler? Yes I can).
: [[User:Bsdrevise|Bsdrevise]] ([[User talk:Bsdrevise|talk]]) 13:40, 2 October 2021 (UTC)
::Well Visual Studio didn't support C99 for a long time (until after publication of C11), causing many projects to avoid it (e.g. [https://mail.python.org/pipermail/python-dev/2012-February/116258.html]) so not sure what large projects you're referring to. Of course there are projects using it but every version of every language has projects written in it.
::I think the most enforceable way to make it consistent would be to only list each language once and remove all the extra versions. Then the question is whether C89 is a different language from C99, to which the answer is no (pretty clearly, C99 is backwards compatible to C89), whereas for others it is less clear, e.g. ALGOL 60 vs ALGOL 68 - but there I think it is clear that all of the implementations are distinct hence ALGOL 68 is a distinct language from ALGOL 60. So with this policy we wouldn't list Python 3 (the incompatibilies are minor, many programs run unchanged in Python 3), and similarly Java and C++ are single entries. --[[User:Mathnerd314159|Mathnerd314159]] ([[User talk:Mathnerd314159|talk]]) 20:22, 4 October 2021 (UTC)
:::I should note this is all to deal with the "historically relevant" criteria; using notability / WTAF these resolve simply: [[C99]] thru [[C17]] exist, as does [[Algol 68]], hence they will be listed, but [[Python 3]] is a redirect so will not be listed. [[User:Mathnerd314159|Mathnerd314159]] ([[User talk:Mathnerd314159|talk]]) 20:18, 10 October 2022 (UTC)
:'''Support.''' Notability defined as [[WP:WTAF]] works well for most lists and I would support that here. It is indeed less subjective than historically significant. [[User:Msnicki|Msnicki]] ([[User talk:Msnicki|talk]]) 19:55, 5 October 2021 (UTC)
:Correction: I was initially worried about the list growing, but I looked through the list again and actually there are quite a few redlinks / nonlinks so the list would end up shrinking, at least initially. The later-dated ones such as SAM76 seem fine to remove but the early 1950's redlinks should probably be preserved by moving them to the [[History of programming languages]] article as prose. --[[User:Mathnerd314159|Mathnerd314159]] ([[User talk:Mathnerd314159|talk]]) 05:26, 19 October 2021 (UTC)
== Fortran 77 ==
This timeline is missing one of the most historical and notable recent versions of of Fortran, Fortran 77. It should be included. <!-- Template:Unsigned --><span class="autosigned" style="font-size:85%;">— Preceding [[Wikipedia:Signatures|unsigned]] comment added by [[User:Lbecque|Lbecque]] ([[User talk:Lbecque#top|talk]] • [[Special:Contributions/Lbecque|contribs]]) 23:16, 1 March 2022 (UTC)</span> <!--Autosigned by SineBot-->
== Jacquard Loom and programming language ==
Sure, Jacquard Loom had [[Program_(machine)|programs]], so it was "programmable" (last paragraph in wikilink), but does that automatically means that it had a [[programming language]]? [[User:MarMi wiki|MarMi wiki]] ([[User talk:MarMi wiki|talk]]) 01:09, 18 June 2022 (UTC)
:It was programmed with punched cards. The hole pattern would have formed a language but not necessarily a human-readable one. However even machine languages can be (and many years ago were) used as programming languages. -- [[User:Derek Ross|Derek Ross]] | [[User talk:Derek Ross|Talk]] 01:49, 18 June 2022 (UTC)
:Apparently it can be interpreted like that ([https://therenegadecoder.com/code/what-is-a-programming-language/ What is a Programming Language?] and [https://therenegadecoder.com/code/who-gets-to-decide-what-is-and-isnt-a-programming-language/ Who Gets to Decide What Is and Isn’t a Programming Language?]). [[User:MarMi wiki|MarMi wiki]] ([[User talk:MarMi wiki|talk]]) 12:04, 18 June 2022 (UTC)
== Year ==
The article doesn't mention what year is taken into account, which is the key element of a chronology. Is that the year of invention, of the first public release even if alpha/beta, the first stable implementation? For example:
* Carbon is listed as a 2022 language, but it's only a project and is not defined yet, let alone implemented.
* Ruby is listed as a 1995 language, but it was conceived in 1993, had a first public beta release (or series of releases) in December 1995, and only had its first stable implementation in December 1996 (http://blog.nicksieger.com/articles/2006/10/20/rubyconf-history-of-ruby/).
* Gleam is listed as a 2024 language, but was created in 2016, and began getting numbered versions in 2019.
If the meaning of "year" is not clearly specified, more such discrepancies are bound to happen. <!-- Template:Unsigned IP --><small class="autosigned">— Preceding [[Wikipedia:Signatures|unsigned]] comment added by [[Special:Contributions/2A02:A03F:C0B9:7C00:9BB:1A34:540D:52A8|2A02:A03F:C0B9:7C00:9BB:1A34:540D:52A8]] ([[User talk:2A02:A03F:C0B9:7C00:9BB:1A34:540D:52A8#top|talk]]) 15:56, 6 November 2022 (UTC)</small> <!--Autosigned by SineBot-->
On the same note, "Predecessors" should be defined too. From the look of it, it's rather "Influencing languages" than "Predecessors", or the whole table has to be reviewed. <!-- Template:Unsigned IP --><small class="autosigned">— Preceding [[Wikipedia:Signatures|unsigned]] comment added by [[Special:Contributions/2A02:A03F:C0B9:7C00:9BB:1A34:540D:52A8|2A02:A03F:C0B9:7C00:9BB:1A34:540D:52A8]] ([[User talk:2A02:A03F:C0B9:7C00:9BB:1A34:540D:52A8#top|talk]]) 16:02, 6 November 2022 (UTC)</small> <!--Autosigned by SineBot-->
In https://archive.org/details/hyper_number_4_5 is possible to find some referrences to other languages in the section Software. Some expert to tell if it can be useful to add some to the wikipedia articles. Best Regards <!-- Template:Unsigned IP --><small class="autosigned">— Preceding [[Wikipedia:Signatures|unsigned]] comment added by [[Special:Contributions/190.160.142.123|190.160.142.123]] ([[User talk:190.160.142.123#top|talk]]) 23:14, 28 April 2023 (UTC)</small> <!--Autosigned by SineBot-->
== Assemblers (standard and "higher level") omitted ==
IBM's mainframe OS and program products were (and are) written in various assemblers starting with the S/360 Project (see Mythical Man Month, Fred Brooks). Certainly prior mainframes also had assemblers.
During the S/360 period and beyond, aside from assemblers (which were designed for large systems and included a Turing-Complete macro facility) there were also "assemblers" like PL/S, PL/AS, PL/X which cross compiled assembler-like code. Much of this code is still in production today with z/OS. Anyway, all these are important pieces in the history of programming language development. IBM's latest variant, HLASM (high level assembler) is still in active use today both at IBM and at systems software vendors.
Also, we should not forget PL/360 which was a Wirth creation similar to PL/S and friends. [[Special:Contributions/192.19.207.250|192.19.207.250]] ([[User talk:192.19.207.250|talk]]) 08:52, 11 July 2023 (UTC)
:{{done}} The PL/S languages are similar and discussed on on the [[IBM PL/S]] page, so I just added that. And PL/360 is apparently called [[PL360]] without the hyphen, also added. HLASM is apparently just a dialect of [[Basic Assembly Language]], so I added BAL rather than HLASM. [[User:Mathnerd314159|Mathnerd314159]] ([[User talk:Mathnerd314159|talk]]) 16:19, 11 July 2023 (UTC)
== Shakespeare ==
As the article purports to list notable programming languages, I propose to remove the Shakespeare Programming Language (2001) from the list. The referenced article fails to explain why it is a notable programming language. I actually refers to another esoteric language (Chef) about making code look like something that is not code as one of its properties. [[User:Rmc1134|Rmc1134]] ([[User talk:Rmc1134|talk]]) 15:12, 27 October 2023 (UTC)
== Should we separate compiled/interpreted languages from the other early ones? ==
I'm talking about the earliest entries.
I'd think so. I'm not saying delete these entries, not at all (in fact some additions might be in order), just to separate them into a "non-compiled or interpreted" category rather than just chronologically. I think this'd clarify to the reader what's going on here.
(Assembly languages might also be included with compiled/interpreted languages, I don't know enough to know). It it's not compiled or interpreted, is it really a [[programming language]]? Not according to that article I don't think. I don't know enough about the subject to do it, but I'm suggesting that it probably should be done. [[User:Herostratus|Herostratus]] ([[User talk:Herostratus|talk]]) 20:54, 28 August 2024 (UTC)
:Just looking at them:
:* An [[Interpreter (computing)|interpreter]] is a computer program that directly executes instructions written in a programming or scripting language, without requiring them previously to have been compiled into a machine language program.
:* A [[compiler]] is a computer program that translates computer code written in one programming language (the source language) into another language (the target language)
:There is nothing stopping one from writing an interpreter and a compiler for the same language. At that point, the language is both interpreted and compiled - what is your proposal?
:Regarding assembly, the translation from mnemonics to machine code is clearly a compilation step. [[User:Mathnerd314159|Mathnerd314159]] ([[User talk:Mathnerd314159|talk]]) 15:39, 31 August 2024 (UTC)
::Hmmm... so would the Jaquard loom cards be an Interpreted language? [[User:Herostratus|Herostratus]] ([[User talk:Herostratus|talk]]) 23:15, 9 September 2024 (UTC)
:::I think it's pretty arguable if they form a programming language at all. The cards are not Turing complete, AFAICT. Neither is Begriffsschrift, I think - it is just logic. So really the first entry should be Plankalkül or ENIAC code.
:::Getting past that though, whether punch cards are interpreted or compiled depends on the implementation. It is sort of like a text file today - it could be C code to be compiled or Python code to be interpreted. If there is no clear compiled object format then most likely it is interpreted. (E.g. Lua is still called interpreted even though there is the [[LuaJIT]] JIT compiler) [[User:Mathnerd314159|Mathnerd314159]] ([[User talk:Mathnerd314159|talk]]) 04:29, 11 September 2024 (UTC)
== Missing all Unix and Unix like lineage! ==
I missed the Multix, Unix (several forms and version) and all derivatives like Ultrix, OSF, Tru64, Android, IOS, etc. [[Special:Contributions/167.137.1.14|167.137.1.14]] ([[User talk:167.137.1.14|talk]]) 19:10, 18 March 2025 (UTC)
:This article is for programming languages. It appears you are looking for [[Timeline of operating systems]]. [[User:GubThe|GubThe]] ([[User talk:GubThe|talk]]) 15:16, 9 June 2025 (UTC)
== Jai programming language ==
Missing the Jai language by game developer Jonathan Blow. [[Special:Contributions/2620:83:8000:2000:0:0:1:4F0|2620:83:8000:2000:0:0:1:4F0]] ([[User talk:2620:83:8000:2000:0:0:1:4F0|talk]]) 18:48, 25 March 2025 (UTC)
::Jai appears to be in a weird situation. It redirects to Jonathan Blow's page. It is referred to on various Wikipedia pages, but often it's not allowed to be treated as if a recognized notable language. If Jai is ever publicly and officially released, likely will get a full page pretty soon afterwards, and then it can be put on multiple programming related pages.[[User:Wukuendo|Wukuendo]] ([[User talk:Wukuendo|talk]]) 07:43, 11 April 2025 (UTC)
== Ada Lovelace ==
No one would think Elizabeth Queen of United Kingdom (and Commonwealth) should be known instead as: Elizabeth U.K. ''etc''. [[Queen Elizabeth]] - simply E. is the first name II is the second name - [[Elizabeth II]] - there isn't any second name shown and routing back through kings / King(s) no surname / second name - so in the case of the Queen the fact of the role of monarch as identifier is observable - but "Ada King" is know - is not suppressed devalued / non-relevant - in the case of a Queen the role is the identity of the individual i.e. either "of United Kingom", or, "II" - in the case of a Countess if her role as an aristocrat was expressed through her work with Babbage could add value to the necessity of fusion of the title as the name - orlando.cambridge.org/people/4e5223ec-e79e-4d0b-b900-251046f3a2b6: "Anne Isabella Baroness Noel Byron" although "Standard Name: Noel Byron". [[User:Onemillionthtree|(𒌋*𓆏)𓆭]] 13:42, 10 June 2025 (UTC)
|