Reference

Programming Languages Directory

Who built each language, when it appeared, its standard, paradigms, and where it is used today — 34 languages from Fortran (1957) to Zig, in one reference page.

Showing 34 of 34 languages

Assembly

Systems · Since 1947

Official site

The lowest-level human-writable language: mnemonics that map almost one-to-one to CPU machine instructions. Each architecture (x86-64, ARM, RISC-V) has its own dialect.

Created by
Kathleen Booth (early pioneer)
Developer
Per-architecture (Intel, ARM, RISC-V International)
Latest
Architecture-specific (x86-64, ARMv9, RV64)
Standard
Per-ISA specifications (Intel SDM, ARM ARM, RISC-V ISA spec)
Typing
Untyped (raw registers and memory)
Extensions
.asm, .s, .S
License
Per-vendor / open ISA (RISC-V)
ImperativeUnstructured

Used for

  • Bootloaders & kernels
  • Performance-critical routines
  • Reverse engineering
  • Embedded firmware

Bash

Scripting · Since 1989

Official site

The default shell and scripting language of Linux and macOS. Every developer touches Bash — gluing commands, automating deploys, and writing CI pipelines.

Created by
Brian Fox
Developer
GNU Project (maintainer: Chet Ramey)
Latest
5.3
Standard
POSIX.1-2024 shell (IEEE 1003.1) as baseline, with Bash extensions
Typing
Dynamic, weak (everything is a string)
Extensions
.sh, .bash
License
GPLv3
ImperativeProceduralScripting

Used for

  • Shell scripting & automation
  • CI/CD pipelines
  • Server administration
  • Developer tooling

C

Systems · Since 1972

Official site

The foundational systems language that nearly every operating system, database, and language runtime is built on. Small, fast, and close to the metal.

Created by
Dennis Ritchie
Developer
ISO/IEC JTC1/SC22/WG14
Latest
C23
Standard
ISO/IEC 9899:2024 (C23)
Typing
Static, weak
Extensions
.c, .h
License
Open standard
ProceduralImperativeStructured

Used for

  • Operating systems (Linux)
  • Embedded systems
  • Databases (PostgreSQL, SQLite)
  • Language runtimes

C#

Enterprise · Since 2000

Official site

Microsoft's flagship object-oriented language for the .NET platform. It spans web APIs, desktop apps, cloud services, and game development with Unity.

Created by
Anders Hejlsberg
Developer
Microsoft (.NET Foundation)
Latest
C# 14 (.NET 10)
Standard
ECMA-334 / ISO/IEC 23270
Typing
Static, strong (with dynamic support)
Extensions
.cs, .csx
License
MIT (Roslyn compiler)
Object-orientedComponent-orientedFunctionalImperative

Used for

  • Web APIs (ASP.NET Core)
  • Game development (Unity)
  • Enterprise desktop apps
  • Cloud services (Azure)

C++

Systems · Since 1985

Official site

An extension of C with classes, templates, and zero-cost abstractions. It powers game engines, browsers, trading systems, and anywhere performance is non-negotiable.

Created by
Bjarne Stroustrup
Developer
ISO/IEC JTC1/SC22/WG21
Latest
C++23
Standard
ISO/IEC 14882:2024 (C++23)
Typing
Static, strong (with implicit conversions)
Extensions
.cpp, .cc, .hpp, .h
License
Open standard
Object-orientedGenericProceduralFunctional

Used for

  • Game engines (Unreal)
  • Browsers (Chrome, Firefox)
  • High-frequency trading
  • Graphics & simulation

Clojure

Functional · Since 2007

Official site

A modern Lisp dialect on the JVM emphasizing immutability, persistent data structures, and interactive REPL-driven development.

Created by
Rich Hickey
Developer
Clojure team (Nubank-sponsored)
Latest
1.12
Standard
No formal standard — defined by the reference implementation
Typing
Dynamic, strong
Extensions
.clj, .cljs, .cljc, .edn
License
Eclipse Public License 1.0
FunctionalLisp (homoiconic)Concurrent

Used for

  • Backend services
  • Data processing
  • Fintech (Nubank)
  • Interactive development

COBOL

Enterprise · Since 1959

Official site

The business-oriented language from 1959 that still processes an estimated 70% of global financial transactions. Banks, insurers, and governments run on it daily.

Created by
CODASYL Committee, Grace Hopper (influence)
Developer
ISO/IEC JTC1/SC22
Latest
COBOL 2023
Standard
ISO/IEC 1989:2023
Typing
Static, weak
Extensions
.cbl, .cob, .cpy
License
Open standard
ImperativeProceduralObject-oriented (since 2002)

Used for

  • Banking & mainframe systems
  • Insurance claims processing
  • Government systems
  • Batch transaction processing

Dart

Mobile · Since 2011

Official site

A client-optimized language from Google, best known as the language of Flutter. One codebase compiles to native mobile, web, and desktop apps.

Created by
Lars Bak, Kasper Lund
Developer
Google
Latest
3.9
Standard
ECMA-408 (Dart Programming Language Specification)
Typing
Static, strong (sound null safety)
Extensions
.dart
License
BSD 3-Clause
Object-orientedFunctionalImperative

Used for

  • Cross-platform apps (Flutter)
  • Mobile UI development
  • Web apps
  • CLI tools

Elixir

Functional · Since 2012

Official site

A dynamic, functional language built on the Erlang VM, delivering massive concurrency with Ruby-inspired syntax. The Phoenix framework makes it a real-time web powerhouse.

Created by
José Valim
Developer
Elixir core team (Dashbit)
Latest
1.18
Standard
No formal standard — defined by the reference implementation on BEAM
Typing
Dynamic, strong (gradual set-theoretic types in progress)
Extensions
.ex, .exs
License
Apache License 2.0
FunctionalConcurrent (actor model)Distributed

Used for

  • Real-time web (Phoenix LiveView)
  • Chat & messaging systems
  • IoT (Nerves)
  • Fault-tolerant services

Erlang

Functional · Since 1986

Official site

A language built for telecom-grade reliability: systems that run forever, self-heal, and handle millions of concurrent connections. WhatsApp served billions of users with it.

Created by
Joe Armstrong, Robert Virding, Mike Williams
Developer
Ericsson / Erlang Ecosystem Foundation
Latest
OTP 28
Standard
No formal standard — defined by Erlang/OTP
Typing
Dynamic, strong
Extensions
.erl, .hrl
License
Apache License 2.0
FunctionalConcurrent (actor model)Distributed

Used for

  • Telecom switches
  • Messaging (WhatsApp, RabbitMQ)
  • Distributed databases (CouchDB)
  • High-availability systems

F#

Functional · Since 2005

Official site

A functional-first language for .NET with succinct syntax, powerful type inference, and unique features like type providers and units of measure.

Created by
Don Syme
Developer
Microsoft & F# Software Foundation
Latest
F# 10 (.NET 10)
Standard
F# Language Specification (fsharp.org)
Typing
Static, strong (Hindley–Milner inference)
Extensions
.fs, .fsx, .fsi
License
MIT
Functional-firstObject-orientedImperative

Used for

  • Financial modeling
  • Data science on .NET
  • Domain modeling
  • Web (Fable, Giraffe)

Fortran

Data & Scientific · Since 1957

Official site

The first widely-used high-level programming language, still unbeaten for raw numerical computation. Weather forecasts and physics simulations run on Fortran today.

Created by
John Backus
Developer
ISO/IEC JTC1/SC22/WG5
Latest
Fortran 2023
Standard
ISO/IEC 1539-1:2023
Typing
Static, strong
Extensions
.f90, .f95, .f03, .f
License
Open standard
ImperativeProceduralArrayObject-oriented (modern)

Used for

  • Weather & climate models
  • Computational physics
  • HPC & supercomputing
  • Legacy scientific libraries (BLAS, LAPACK)

Go

Systems · Since 2009

Official site

A compiled language from Google that prioritizes simplicity, fast builds, and first-class concurrency via goroutines. It is the language of cloud infrastructure.

Created by
Robert Griesemer, Rob Pike, Ken Thompson
Developer
Google (Go team)
Latest
1.25
Standard
The Go Language Specification (go.dev/ref/spec)
Typing
Static, strong (structural interfaces)
Extensions
.go
License
BSD 3-Clause
ConcurrentImperativeStructural

Used for

  • Cloud infrastructure (Docker, Kubernetes)
  • Microservices & APIs
  • CLI tools
  • Network services

Haskell

Functional · Since 1990

Official site

A purely functional language with lazy evaluation and one of the most advanced type systems in mainstream use. Learning it changes how you think about programming.

Created by
Simon Peyton Jones, Philip Wadler, Haskell Committee
Developer
Haskell.org / GHC team
Latest
GHC 9.12 (Haskell 2010 standard)
Standard
Haskell 2010 Language Report
Typing
Static, strong (Hindley–Milner type inference)
Extensions
.hs, .lhs
License
BSD 3-Clause (GHC)
Purely functionalLazy evaluationDeclarative

Used for

  • Compilers & language tools
  • Financial modeling
  • Formal verification
  • Academic research

Java

Enterprise · Since 1995

Official site

A class-based, object-oriented language built around the 'write once, run anywhere' promise of the JVM. It remains a backbone of enterprise systems, Android, and big data platforms.

Created by
James Gosling
Developer
Oracle Corporation (OpenJDK community)
Latest
Java 25 (LTS)
Standard
Java Language Specification (JLS), governed by the JCP
Typing
Static, strong
Extensions
.java, .jar, .class
License
GPLv2 with Classpath Exception (OpenJDK)
Object-orientedClass-basedConcurrentFunctional (since Java 8)

Used for

  • Enterprise backends (Spring)
  • Android development
  • Big data (Hadoop, Kafka)
  • Banking & fintech systems

JavaScript

Web · Since 1995

Official site

The language of the web browser and, through Node.js, a major server-side language. Every interactive website you use runs JavaScript somewhere.

Created by
Brendan Eich
Developer
Ecma International (TC39)
Latest
ECMAScript 2025 (ES2025)
Standard
ECMA-262 / ISO/IEC 16262
Typing
Dynamic, weak
Extensions
.js, .mjs, .cjs
License
Open standard
Event-drivenFunctionalImperativePrototype-based OOP

Used for

  • Frontend web (React, Vue)
  • Server-side (Node.js)
  • Mobile apps (React Native)
  • Desktop apps (Electron)

Julia

Data & Scientific · Since 2012

Official site

A high-performance language for scientific computing that aims to be as easy as Python and as fast as C. Its multiple-dispatch design is beloved in numerical computing.

Created by
Jeff Bezanson, Stefan Karpinski, Viral B. Shah, Alan Edelman
Developer
JuliaLang community / JuliaHub
Latest
1.12
Standard
No formal standard — defined by the reference implementation
Typing
Dynamic, strong (optional type annotations)
Extensions
.jl
License
MIT
Multiple dispatchFunctionalDynamicArray

Used for

  • Scientific computing
  • Numerical simulation
  • Machine learning (Flux.jl)
  • Climate & pharma modeling

Kotlin

Mobile · Since 2011

Official site

A concise, null-safe JVM language and Google's preferred language for Android development. It interoperates 100% with Java and also compiles to JavaScript and native code.

Created by
JetBrains (Andrey Breslav)
Developer
JetBrains & Kotlin Foundation
Latest
2.2
Standard
No formal standard — defined by the Kotlin language specification (JetBrains)
Typing
Static, strong (null safety built-in)
Extensions
.kt, .kts
License
Apache License 2.0
Object-orientedFunctionalImperativeConcurrent (coroutines)

Used for

  • Android apps
  • Backend (Ktor, Spring)
  • Kotlin Multiplatform (iOS + Android)
  • Gradle build scripts

Lua

Scripting · Since 1993

Official site

A tiny, fast, embeddable scripting language. It is the standard for game scripting (Roblox, World of Warcraft) and embedded configuration (Neovim, Redis, nginx).

Created by
Roberto Ierusalimschy, Luiz Henrique de Figueiredo, Waldemar Celes
Developer
PUC-Rio (Lua.org)
Latest
5.4
Standard
No formal standard — defined by the Lua reference manual
Typing
Dynamic, strong
Extensions
.lua
License
MIT
ProceduralFunctionalPrototype-based OOPScripting

Used for

  • Game scripting (Roblox, WoW)
  • Editor config (Neovim)
  • Embedded scripting (Redis, nginx)
  • IoT devices

MATLAB

Data & Scientific · Since 1984

Official site

A proprietary numeric computing environment and language built around matrix operations. It is the standard tool in engineering education, control systems, and signal processing.

Created by
Cleve Moler
Developer
MathWorks
Latest
R2025b
Standard
Proprietary — defined by MathWorks
Typing
Dynamic, weak
Extensions
.m, .mat, .mlx
License
Proprietary (commercial)
Array/matrix-orientedImperativeObject-oriented

Used for

  • Engineering simulation (Simulink)
  • Signal & image processing
  • Control systems
  • Academic research

Objective-C

Mobile · Since 1984

Official site

The original language of Mac and iPhone development: C extended with Smalltalk-style message passing. Millions of lines still run inside Apple's frameworks and legacy apps.

Created by
Brad Cox, Tom Love
Developer
Apple Inc.
Latest
Objective-C 2.0
Standard
No formal standard — defined by Apple's compiler (Clang)
Typing
Static (with dynamic messaging)
Extensions
.m, .mm, .h
License
Compiler under Apache 2.0 (Clang)
Object-oriented (message passing)ImperativeReflective

Used for

  • Legacy iOS/macOS apps
  • Apple framework internals
  • C/Swift interop layers

OCaml

Functional · Since 1996

Official site

An industrial-strength functional language from the ML family with a blazing-fast compiler. It powers Jane Street's trading systems and inspired Rust, F#, and ReScript.

Created by
Xavier Leroy, Damien Doligez, INRIA team
Developer
INRIA / OCaml Foundation
Latest
5.3
Standard
No formal standard — defined by the reference implementation
Typing
Static, strong (Hindley–Milner inference)
Extensions
.ml, .mli
License
LGPL 2.1
FunctionalImperativeObject-oriented

Used for

  • Trading systems (Jane Street)
  • Compilers & program analysis
  • Formal verification (Coq)
  • Systems tooling

Perl

Scripting · Since 1987

Official site

The original 'Swiss Army chainsaw' of scripting, famous for its text-processing power and regular expressions. It glued together the early web through CGI scripts.

Created by
Larry Wall
Developer
The Perl Foundation / Perl Steering Council
Latest
5.42
Standard
No formal standard — defined by the perl interpreter
Typing
Dynamic
Extensions
.pl, .pm
License
Artistic License / GPL
ImperativeProceduralObject-orientedFunctional

Used for

  • Text processing & regex
  • System administration
  • Bioinformatics (BioPerl)
  • Legacy web (CGI)

PHP

Web · Since 1995

Official site

A server-side scripting language purpose-built for the web. It still powers most of the internet, including WordPress, Laravel applications, and Facebook's origins.

Created by
Rasmus Lerdorf
Developer
The PHP Group / PHP Foundation
Latest
8.5
Standard
No formal standard — defined by the reference implementation and PHP RFCs
Typing
Dynamic, weak (gradual type declarations since PHP 7)
Extensions
.php
License
PHP License 3.01
ImperativeObject-orientedFunctionalProcedural

Used for

  • CMS platforms (WordPress)
  • Web frameworks (Laravel, Symfony)
  • E-commerce (Shopify apps, WooCommerce)
  • Server-side rendering

Python

General-purpose · Since 1991

Official site

A high-level, general-purpose language known for its readable syntax and huge ecosystem. It dominates data science, machine learning, automation, and backend web development.

Created by
Guido van Rossum
Developer
Python Software Foundation
Latest
3.14
Standard
No formal standard — defined by the CPython reference implementation and PEPs
Typing
Dynamic, strong (optional type hints since 3.5)
Extensions
.py, .pyw, .pyi
License
PSF License (open source)
Object-orientedImperativeFunctionalProcedural

Used for

  • Web backends (FastAPI, Django)
  • Data science & AI
  • Automation & scripting
  • DevOps tooling

R

Data & Scientific · Since 1993

Official site

A language and environment built for statistical computing and data visualization. It is the lingua franca of statisticians, with CRAN hosting over 20,000 packages.

Created by
Ross Ihaka, Robert Gentleman
Developer
R Core Team / R Foundation
Latest
4.5
Standard
No formal standard — defined by the R reference implementation
Typing
Dynamic
Extensions
.r, .R, .Rmd
License
GPLv2
FunctionalObject-orientedArrayProcedural

Used for

  • Statistical analysis
  • Data visualization (ggplot2)
  • Bioinformatics
  • Academic research & reporting

Ruby

Web · Since 1995

Official site

A dynamic language designed for programmer happiness, with elegant, human-friendly syntax. Ruby on Rails made it the startup language of the 2000s and it still runs GitHub and Shopify.

Created by
Yukihiro Matsumoto
Developer
Ruby core team
Latest
3.5
Standard
ISO/IEC 30170:2012
Typing
Dynamic, strong (duck typing)
Extensions
.rb, .erb
License
Ruby License / BSD 2-Clause
Object-oriented (everything is an object)ImperativeFunctionalReflective

Used for

  • Web apps (Ruby on Rails)
  • Prototyping & MVPs
  • DevOps tooling (Chef, Vagrant)
  • Static site generators (Jekyll)

Rust

Systems · Since 2015

Official site

A systems language that guarantees memory safety without a garbage collector through its ownership and borrowing model. Repeatedly voted the most-loved language by developers.

Created by
Graydon Hoare
Developer
Rust Foundation
Latest
1.90 (Edition 2024)
Standard
No formal standard — defined by the Rust Reference and rustc
Typing
Static, strong (affine types, ownership)
Extensions
.rs
License
MIT / Apache 2.0
ConcurrentFunctionalImperativeStructured

Used for

  • Systems programming
  • WebAssembly
  • CLI & developer tools
  • Blockchain & embedded

Scala

Functional · Since 2004

Official site

A JVM language that fuses object-oriented and functional programming with a powerful static type system. It underpins big data tools like Apache Spark and Kafka.

Created by
Martin Odersky
Developer
EPFL & the Scala Center
Latest
3.7
Standard
Scala Language Specification (EPFL)
Typing
Static, strong (advanced type inference)
Extensions
.scala, .sc
License
Apache License 2.0
FunctionalObject-orientedConcurrent

Used for

  • Big data (Apache Spark)
  • Streaming (Kafka, Akka)
  • Backend services
  • Data engineering pipelines

Solidity

Web · Since 2014

Official site

The dominant language for writing smart contracts on Ethereum and EVM-compatible blockchains. Contracts written in it hold billions of dollars in value.

Created by
Gavin Wood, Christian Reitwiessner
Developer
Ethereum Foundation (Solidity team)
Latest
0.8.x
Standard
No formal standard — defined by the solc compiler
Typing
Static, strong
Extensions
.sol
License
GPLv3
Object-orientedContract-orientedImperative

Used for

  • Smart contracts (Ethereum)
  • DeFi protocols
  • NFTs & tokens
  • DAOs

SQL

Database · Since 1974

Official site

The declarative standard language for querying and managing relational databases. Fifty years on, it remains the single most transferable skill in data work.

Created by
Donald D. Chamberlin, Raymond F. Boyce
Developer
ISO/IEC JTC1/SC32/WG3
Latest
SQL:2023
Standard
ISO/IEC 9075:2023
Typing
Static, strong (per-dialect variations)
Extensions
.sql
License
Open standard
DeclarativeSet-based

Used for

  • Relational databases (PostgreSQL, MySQL)
  • Data analytics & BI
  • Data warehousing
  • Application persistence

Swift

Mobile · Since 2014

Official site

Apple's modern language for iOS, macOS, watchOS, and tvOS development. It combines safety and expressiveness with performance close to C++.

Created by
Chris Lattner, Apple Inc.
Developer
Apple Inc. (open source community)
Latest
6.2
Standard
No formal standard — defined by the Swift compiler and Evolution process
Typing
Static, strong (type inference)
Extensions
.swift
License
Apache License 2.0
Protocol-orientedObject-orientedFunctionalImperative

Used for

  • iOS & macOS apps
  • SwiftUI interfaces
  • Server-side Swift (Vapor)
  • Embedded (Swift Embedded)

TypeScript

Web · Since 2012

Official site

A statically-typed superset of JavaScript that compiles to plain JavaScript. It brings compile-time type safety and rich editor tooling to large JavaScript codebases.

Created by
Anders Hejlsberg
Developer
Microsoft
Latest
5.9
Standard
No formal standard — defined by the TypeScript compiler (tsc)
Typing
Static, gradual (structural typing)
Extensions
.ts, .tsx, .mts, .cts
License
Apache License 2.0
Object-orientedFunctionalImperative

Used for

  • Large frontend apps (Next.js, Angular)
  • Node.js backends
  • Full-stack development
  • Library authoring

Zig

Systems · Since 2016

Official site

A modern systems language positioned as a better C: no hidden control flow, no hidden allocations, and compile-time code execution instead of macros.

Created by
Andrew Kelley
Developer
Zig Software Foundation
Latest
0.15
Standard
No formal standard — pre-1.0, defined by the reference compiler
Typing
Static, strong
Extensions
.zig
License
MIT
ImperativeProceduralCompile-time metaprogramming

Used for

  • Systems programming
  • C interop & cross-compilation
  • Runtimes (Bun)
  • Embedded & game dev