Skip to content

abdullahguch/programming-languages

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 

Repository files navigation

Programming Languages Family Tree

The family tree of major programming languages in a visual display.

Explanation

Assembly Language

Assembly Language: The starting point for low-level languages that translate directly to machine code. From here, higher-level languages began to evolve.

Machine Code and Early High-Level Languages

  • Autocode: One of the first high-level languages, leading to the development of ALGOL.
  • Fortran: The first widely-used high-level language, influencing many scientific and engineering languages.
  • LISP: One of the oldest high-level languages, which influenced many languages in the functional programming domain.

ALGOL Family

  • ALGOL 58, 60, and 68: These languages were highly influential in the development of structured programming and spawned many other languages.
  • Simula 67: An extension of ALGOL, it introduced object-oriented programming concepts, leading to languages like Smalltalk and C++.
  • Pascal: Derived from ALGOL, it influenced languages focused on teaching and structured programming.

C Family

  • BCPL, B, and C: Developed as a system programming language, C became one of the most influential languages, leading to many descendants like C++, Objective-C, and C#.
  • C++: An extension of C that added object-oriented features.
  • Objective-C: Combined C with Smalltalk-style messaging, eventually influencing Swift.
  • C#: Developed by Microsoft, heavily influenced by C++ and Java.

Java and Its Descendants

  • Java: Developed with a focus on portability and security, Java has a vast influence, especially in enterprise environments.
  • JavaScript: Though it shares the name, it is more influenced by Self and Scheme. JavaScript's role in web development is immense, leading to languages like TypeScript and ECMAScript.
  • Swift: Developed by Apple as a successor to Objective-C, borrowing concepts from various modern languages.

Python Family

  • Python: Known for its readability and simplicity, Python has influenced many modern programming practices.
  • Ruby: Influenced by Perl, Smalltalk, and Python, it emphasizes simplicity and productivity.
  • Python 3: A major update to Python that fixed many inconsistencies and introduced new features.

LISP Family

  • Scheme and Common Lisp: Variants of LISP that have influenced many functional programming languages.
  • Clojure: A modern LISP dialect that runs on the JVM, emphasizing concurrency and immutability.

ML Family

  • ML Family: Including Standard ML and OCaml, these languages focus on functional programming and type safety.
  • Haskell: A purely functional language with strong type inference, influencing many modern functional languages.

This family tree is a simplified view of the vast and complex evolution of programming languages, but it covers the major branches and their key descendants. For the visual display of the programming languages in a family tree, see the programming-languages.md file.

Enjoy!!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published