Skip to content

bldl/language-standards

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

2 Commits
Β 
Β 

Repository files navigation

Standard and Specification Documents for a Selection of General-Purpose Programming Languages

  • Date: 2024-06-24
  • Author: Mikhail Barash, University of Bergen, Norway
Python C Java C++ C# ECMAScript Visual Basic .NET SQL PHP Go Assembly R Swift Ruby Rust Fortran Ada Perl F# COBOL Dart Lua Julia Scala Haskell TypeScript D Kotlin Groovy Zig Scheme Prolog HTML WebAssembly CSS
language webpage link link link link link link link link link link link link link link link link link, link link link link link link link link link link link link link
standard/specification ID Python Language Reference 🌐 ISO/IEC 9899 Java Language and Virtual Machine Specifications 🌐 ISO/IEC 14882 🌐 ECMA-334, ISO/IEC 23270 🌐 ECMA-262 Visual Basic Language Specification 🌐 ISO/IEC 9075 PHP Language Specification The Go Programming Language Specification 🌐 IEEE 694-1985 R Language Definition The Swift Programming Language 🌐 JSA - JIS X 3017 The Rust Reference 🌐 ISO/IEC 1539-1, πŸ‡ΊπŸ‡Έ Military Standard 1753, πŸ‡ΊπŸ‡Έ ANSI X 3.9 1966, πŸ‡ΊπŸ‡Έ ANSI X3J3/90.4, 🌐 ISO/IEC 9593-1:1990 🌐 ISO/IEC 8652 Perl Documentation The F# Language Specification 🌐 ISO/IEC 1989 🌐 ECMA-408 Lua Reference Manual Julia Documentation Scala Language Specification Haskell 2010 Language Report D Language Reference Kotlin language specification Groovy Language Documentation Zig Language Reference 🌐 IEEE 1178-1990, reports 🌐 ISO/IEC 13211 🌐 HTML Specification 🌐 WebAssembly Specification 🌐 CSS Snapshot
type of specification specification standard specification standard standard standard specification standard specification specification standard specification specification standard specification standard standard specification specification standard standard specification specification specification specification specification specification specification specification specification standard standard standard standard standard
standardization body ❎ ISO/IEC ❎ ISO/IEC Ecma, ISO Ecma ❎ ISO/IEC ❎ ❎ IEEE ❎ ❎ ISO/IEC ❎ ISO/IEC ISO ❎ ❎ ISO Ecma ❎ ❎ ❎ ❎ ❎ ❎ ❎ ❎ ❎ IEEE ISO WHATWG, W3C W3C W3C
specification body Python Software Foundation 🌐 Oracle (Java Community Process) 🌐 🌐 🌐 VB.NET Team (Microsoft) 🌐 The PHP Foundation Go Team (Google) 🌐 R Foundation Apple 🌐 Rust Foundation 🌐 🌐 The Perl & Raku Foundation F# Software Foundation 🌐 🌐 Lua.org JuliaLang Scala Center (EPFL) Haskell Committee TypeScript Team (Microsoft) D Language Foundation Kotlin Foundation Apache Software Foundation Zig Software Foundation 🌐 🌐 🌐 🌐 🌐
committee ID (link) WG14 (link) WG21 TC49-TG2 TC39 WG3 WG5 WG9 WG4 TC52 Groovy Project Management Committee WG17 WebAssembly Community Group CSS Working Group
governance model / charter community standardization body corporate, community standardization body corporate standardization body corporate standardization body community corporate standardization body community corporate, community ??? community standardization body standardization body community corporate standardization body standardization body community community community community community community corporate community community standardization body standardization body standardization body standardization body standardization body
governance document link link link link link link link link link link link link link link link link link link link link link link link link link link link
BDFL Guido van Rossum (until 2018) - - - - - - - - - - - - Yukihiro Matsumoto (originally) - - - - - - - - - - - - - - - - - - - - -
membership policy contributors national bodies organizations, individuals national bodies organizations organizations ??? national bodies contributors, organizations n/a n/a contributors, individuals open to contributors national bodies organizations, contributors national bodies national bodies contributors n/a national bodies organizations contributors contributors contributors contributors contributors contributors contributors contributors contributors contributors national bodies open open open
membership policy link link link link link link link link link link, link link link link link link link link link link link
contributing guide link link link link link link link link link link link link link link link link link link link link link link
IPR policy
committee structure
language first appeared 1991 1972 1995 1985 2000 1995 2001 1974 1995 2009 1947 1993 2014 1995 2015 1957 1980 1987 2005 1959 2011 1993 2012 2004 1990 2012 2001 2011 2003 2016 1975 1972 1993 2017 1996
most recent release date 2024 2018 ??? 2020 2024 2023 2024 2023 2024 2024 n/a 2024 2024 2024 2024 2023 2023 2024 2023 2023 2024 2023 2024 2024 2010 2024 2024 2024 2024 2024 2013 ??? 2024 ??? ???
version information 3.12.4 C17 ??? 20 13.0 15 17.9.2 2023 8.3.8 1.22.4 n/a 4.4.1 5.10.1 3.3.3 1.79.0 2023 ??? 5.40.0 8.0.0 2023 3.4.4 5.4.6 1.10.4 3.4.0 2010 5.4.2 2.108.0 2.0.0 4.0.21 0.13.0 R7RS ??? continuous release ("Living Standard") ??? ???
release cadence once per year once several years twice per year every 3 years ??? once per year ??? once several years once per year ??? once per year??? once per year??? once per year??? every six weeks irregular irregular??? once per year??? once per year??? irregular??? ??? irregular??? once per year??? once per year??? once per year??? ??? ??? ???, link ???, link ??? ??? ??? continuous release ("Living Standard") ??? ???
open-access βœ… yes ❌ no βœ… yes ❌ no βœ… yes βœ… yes βœ… yes ❌ no βœ… yes βœ… yes ??? βœ… yes βœ… yes βœ… yes βœ… yes ❌ no ❌ no βœ… yes βœ… yes ❌ no βœ… yes βœ… yes βœ… yes βœ… yes βœ… yes βœ… yes βœ… yes βœ… yes βœ… yes βœ… yes βœ… yes ❌ no βœ… yes βœ… yes βœ… yes
license PSF License ISO Standard license ISO Standard Ecma Default Copyright Notice Ecma Alternative Copyright Notice ??? ISO Standard Creative Commons Attribution 3.0 ??? ??? GNU??? Apache License 2.0??? BSD-2-Clause??? ??? ISO Standard ISO Standard GPL??? Apache License 2.0??? ISO Standard Ecma Copyright Notice MIT License MIT License Apache License 2.0 BSD??? Apache License 2.0 Boost Software License Apache License 2.0 Apache License 2.0 MIT License GPL for some, varies ISO Standard MIT??? W3C Document License ???
syntax specification model link link Sect. 6.2. of: link link link link Sect. 2 of: link Sect. 10.1 of: link link link informal link
syntax specification link link Appendix A of: link link link parser: link link link obsolete: link link Sect. 8 of: link link link link obsolete: link link link link link link link link link
semantics specification ✏️ prose ✏️ prose ✏️ prose ✏️ prose ✏️ prose prose+? ✏️ prose ✏️ prose ✏️ prose ✏️ prose ✏️ prose ✏️ prose ✏️ prose ✏️ prose ✏️ prose ✏️ prose ✏️ prose ✏️ prose ✏️ prose ✏️ prose ✏️ prose ✏️ prose ✏️ prose ✏️ prose prose+? ✏️ prose ✏️ prose ✏️ prose ✏️ prose ✏️ prose ✏️ prose prose+? ✏️ prose βš™οΈ operational semantics ✏️ prose
mechanised specification ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no partially? ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no partially? ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no βœ… yes ❌ no
decision-making approach
public meetings ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no ❌ no βœ… yes? βœ… yes? βœ… yes?
notes available βœ… yes βœ… yes βœ… yes βœ… yes informal: link archive: link βœ… yes βœ… yes archive: link βœ… yes βœ… yes βœ… yes βœ… yes
meeting cadence
community involvement
liasons
tools used

About

Standard and Specification Documents for a Selection of General-Purpose Programming Languages. @mikbar-uib

Resources

Stars

Watchers

Forks