generational list of programming languages#ML based
{{Short description|none}}
{{For|programming languages categorized by generational numbers|programming language generations}}
{{more citations needed|date=December 2020}}
{{Programming language lists}}
This is a "genealogy" of programming languages. Languages are categorized under the ancestor language with the strongest influence. Those ancestor languages are listed in alphabetic order. Any such categorization has a large arbitrary element, since programming languages often incorporate major ideas from multiple sources.
ALGOL based
- ALGOL (also under Fortran)
- Atlas Autocode
- ALGOL 58 (IAL, International Algorithmic Language)
- MAD and GOM (Michigan Algorithm Decoder and Good Old MAD)
- ALGOL 60
- MAD/I
- Simula (see also Simula based)
- SETL
- ABC
- Python
- Julia (also under Lisp, Ruby, ALGOL)
- Nim (also under Oberon)
- Ring (also under C, BASIC, Ruby, C#, Lua)
- Swift (also under Ruby, Objective-C, and Haskell)
- Boo
- Cobra (syntax and features)
- ALGOL 68
- ALGOL W
- Pascal
- Ada
- SPARK
- PL/SQL
- Turbo Pascal
- Object Pascal (Delphi)
- Free Pascal (FPC)
- Kylix (same as Delphi, but for Linux)
- Euclid
- Concurrent Euclid
- Turing
- Turing+ (Turing Plus)
- Object-Oriented Turing
- Mesa
- Modula-2
- Modula-3
- Oberon (Oberon-1)
- Go (also under C)
- V (Vlang)
- Nim (also under Python)
- Oberon-2
- Component Pascal
- Active Oberon
- Zonnon
- Oberon-07
- Lua (also under Scheme and SNOBOL)
- Ring (also under C, BASIC, Ruby, Python, C#)
- SUE
- Plus
- CPL
- BCPL
- B
- C (see also C based)
APL based
BASIC based
- BASIC (also under Fortran II)
- AmigaBASIC
- AMOS BASIC
- BASIC Stamp
- Basic-256
- BASIC09
- BBC Basic
- Blitz BASIC
- Blitz3D
- BlitzMax
- BlitzPlus
- Business Basic
- Caché Basic
- Chinese BASIC
- COMAL
- Commodore BASIC
- DarkBASIC
- DarkBASIC Professional
- Euphoria
- GLBasic
- GRASS
- GW-BASIC
- QuickBASIC
- QBasic
- Basic4GL
- FreeBASIC
- Liberty BASIC
- Run BASIC
- Visual Basic
- VBScript
- Visual Basic for Applications (VBA)
- LotusScript
- Visual Basic .NET
- Small Basic
- B4X
- Basic for Qt
- OpenOffice Basic
- HBasic
- Gambas
- WinWrap Basic
- WordBasic
- QB64
- PureBasic
- REALbasic (Xojo)
- Ring (also under C, Ruby, Python, C#, Lua)
- TI-BASIC
- True BASIC
- Turbo Basic
- PowerBASIC
- wxBasic
- SdlBasic
- RCBasic
- XBasic
- YaBasic
Batch languages
C based
- C (also under BCPL)
- Lua
- Alef
- C++
- Rust (also under Cyclone, Haskell, and OCaml)
- D
- C#
- Windows PowerShell (also under DCL, ksh, and Perl)
- Ring (also under BASIC, Ruby, Python, Lua)
- Cobra (class/object model and other features)
- Java (see also Java based)
- C--
- Cyclone
- Rust (also under C++, Haskell, and OCaml)
- ColdFusion
- Go (also under Oberon)
- V (Vlang)
- Harbour
- Limbo
- LPC
- Pike
- Objective-C (also under Smalltalk)
- Swift (also under Ruby, Python, and Haskell)
- PCASTL (also under Lisp)
- Perl
- Windows PowerShell (also under C#, DCL, and ksh)
- S2
- PHP
- Ruby (also under Smalltalk)
- Julia (also under Lisp, Python, ALGOL)
- Ring (also under C, BASIC, Python, C#, Lua)
- Swift (also under Objective-C, Python, and Haskell)
- Crystal
- Elixir{{Citation needed|date=October 2019}} (also under Erlang)
- PDL (also under APL)
- Raku
- QuakeC
- Ring (also under BASIC, Ruby, Python, C#, Lua) {{cite web |url=http://ring-lang.github.io/doc1.16/introduction.html#ring-and-other-languages |title=The Ring programming language and other languages |author=Ring Team |date=23 October 2021 |work=ring-lang.net }}
- tcsh (also under sh)
C# based
COBOL based
COMIT based
DCL based
- DCL
- Windows PowerShell (also under C#, ksh, and Perl)
ed based
- ed (programming language)
- sed
- AWK
- Perl (also under C)
Eiffel based
Forth based
- Forth
- InterPress
- PostScript
- Joy
- Factor
- Rebol (also under Lisp)
- RPL (also under Lisp)
Fortran based
FP based
HyperTalk based
- HyperTalk
- ActionScript (also under JavaScript)
- AppleScript
- LiveCode
- SenseTalk
- SuperTalk
- Transcript
Java based
JavaScript based
- JavaScript (also under Scheme, Self)
- ActionScript (also under HyperTalk)
- Haxe
- Asm.js
- CoffeeScript
- ECMAScript
- JavaScript OSA
- JScript
- TypeScript
- AssemblyScript
JOSS based
JOSS also inspired features for several versions of BASIC, including Tymshare's SUPER BASIC and DEC's BASIC-PLUS.
Lisp based
- Lisp
- Arc
- AutoLISP
- Clojure
- Common Lisp
- uLisp (A subset of Common Lisp for microcontrollers)
- Emacs Lisp
- ISLISP
- Interlisp
- Julia (has Lisp-like macros, but ALGOL-like syntax) (also under Python, Ruby, ALGOL)
- K (also under APL)
- LFE
- Logo
- Turtle graphics
- MacLisp
- Nu programming language
- PicoLisp
- REBOL
- Red (programming language)
- RPL (also under Forth)
- S
- R
- PCASTL (also under ALGOL)
- Scheme
- GNU Guile
- Racket
- Hop
- Pico
- T
- Lua (also under Modula and SNOBOL)
- Ring (also under C, BASIC, Ruby, Python, C#)
- JavaScript (also based on Self)
- ECMAScript (also based on Self)
ML based
PL/I based
Prolog based
- Prolog
- CLP(R), CLP(FD)
- Mercury
- Erlang
- Cuneiform
- Elixir{{cite web |last1=Valim |first1=José |title=Elixir: The Documentary |url=https://cult.honeypot.io/originals/elixir-the-documentary |website=Honeypot |access-date=11 December 2020 |language=English |format=Video |quote=Erickson, they created Erlang. This technology that they created, right, in the eighties, to solve all these problems. It's going to be perfect to solve those issues that we're having right now with concurrency, those issues that we're having with the web in general, right? I think that was the moment when I had the idea of creating a programming language. Like, look I have this absolutely beautiful piece of software which is the Erlang virtual machine. I want to use it more but it's missing some stuff and I want to try adding this missing stuff.}} (also under Ruby)
- Logtalk
SASL based
SETL based
sh based
- Sh
- bash
- csh (also under C)
- tcsh
- Hamilton C shell
- fish
- zsh
- ksh
- Windows PowerShell (also under C#, DCL, and Perl)
- Qshell
Simula based
- Simula (also under ALGOL 60)
- C++ (also under C)
- Smalltalk
- Objective-C (hybrid of C and Smalltalk)
- Swift (also under Ruby, Python, and Haskell)
- Cobra (support both dynamic and static types)
- Ruby (also under Perl)
- Swift (also under Objective-C, Python, and Haskell)
- Elixir{{Citation needed|date=October 2019}} (also under Erlang)
- Self
- JavaScript (also under Scheme) (see also JavaScript based)
- NewtonScript
- Io
- Object Rexx (also under REXX)
- BETA
Tcl based
Others
References
{{Reflist}}
External links
{{commons category|Tree diagrams of the history of programming languages}}
- [http://merd.sourceforge.net/pixel/language-study/diagram.html Diagram & history of programming languages] {{Webarchive|url=https://web.archive.org/web/20080513101124/http://merd.sourceforge.net/pixel/language-study/diagram.html |date=2008-05-13 }}
{{Programming languages}}
{{DEFAULTSORT:Generational List Of Programming Languages}}