﻿{
"museumName": "The Computer Language Museum",
"version": "1.2.0",
"totalExhibits": 20,
"halls": [
{
"id": "1950s-1960s_pioneers",
"name": "The Pioneers",
"era": "1950s - 1960s",
"path": "eras/1950s-1960s_pioneers/README.md",
"booths": [
{ "name": "Fortran", "year": 1957, "creator": "John Backus (IBM)", "path": "eras/1950s-1960s_pioneers/fortran/README.md", "paradigms": ["Imperative", "Procedural"] },
{ "name": "Lisp", "year": 1958, "creator": "John McCarthy (MIT)", "path": "eras/1950s-1960s_pioneers/lisp/README.md", "paradigms": ["Functional"] },
{ "name": "COBOL", "year": 1959, "creator": "CODASYL Committee", "path": "eras/1950s-1960s_pioneers/cobol/README.md", "paradigms": ["Imperative", "Procedural"] },
{ "name": "ALGOL 60", "year": 1960, "creator": "Joint Committee", "path": "eras/1950s-1960s_pioneers/algol/README.md", "paradigms": ["Imperative", "Structured"] }
]
},
{
"id": "1970s_structured",
"name": "The Structured Foundation",
"era": "1970s",
"path": "eras/1970s_structured/README.md",
"booths": [
{ "name": "C", "year": 1972, "creator": "Dennis Ritchie (Bell Labs)", "path": "eras/1970s_structured/c/README.md", "paradigms": ["Low-Level", "Procedural", "Imperative"] },
{ "name": "Pascal", "year": 1970, "creator": "Niklaus Wirth", "path": "eras/1970s_structured/pascal/README.md", "paradigms": ["Structured", "Procedural"] },
{ "name": "Smalltalk", "year": 1972, "creator": "Alan Kay et al. (Xerox PARC)", "path": "eras/1970s_structured/smalltalk/README.md", "paradigms": ["Object-Oriented"] },
{ "name": "SQL", "year": 1974, "creator": "Chamberlin & Boyce (IBM)", "path": "eras/1970s_structured/sql/README.md", "paradigms": ["Declarative"] }
]
},
{
"id": "1980s_oop_multiparadigm",
"name": "The Multi-Paradigm Dawn",
"era": "1980s",
"path": "eras/1980s_oop_multiparadigm/README.md",
"booths": [
{ "name": "C++", "year": 1983, "creator": "Bjarne Stroustrup (Bell Labs)", "path": "eras/1980s_oop_multiparadigm/cpp/README.md", "paradigms": ["Object-Oriented", "Low-Level", "Generic"] },
{ "name": "Objective-C", "year": 1984, "creator": "Cox & Love", "path": "eras/1980s_oop_multiparadigm/objective_c/README.md", "paradigms": ["Object-Oriented", "Imperative"] },
{ "name": "Perl", "year": 1987, "creator": "Larry Wall", "path": "eras/1980s_oop_multiparadigm/perl/README.md", "paradigms": ["Scripting", "Multi-paradigm"] },
{ "name": "Ada", "year": 1980, "creator": "Jean Ichbiah (DoD)", "path": "eras/1980s_oop_multiparadigm/ada/README.md", "paradigms": ["Structured", "Low-Level", "Concurrent"] }
]
},
{
"id": "1995_web_boom",
"name": "The Internet & Enterprise Boom",
"era": "1990s",
"path": "eras/1995_web_boom/README.md",
"booths": [
{ "name": "Python", "year": 1991, "creator": "Guido van Rossum", "path": "eras/1995_web_boom/python/README.md", "paradigms": ["Object-Oriented", "Functional", "Imperative"] },
{ "name": "Java", "year": 1995, "creator": "James Gosling (Sun)", "path": "eras/1995_web_boom/java/README.md", "paradigms": ["Object-Oriented", "Concurrent"] },
{ "name": "JavaScript", "year": 1995, "creator": "Brendan Eich (Netscape)", "path": "eras/1995_web_boom/javascript/README.md", "paradigms": ["Event-driven", "Functional", "Object-Oriented"] },
{ "name": "Ruby", "year": 1995, "creator": "Yukihiro Matsumoto", "path": "eras/1995_web_boom/ruby/README.md", "paradigms": ["Object-Oriented", "Functional", "Scripting"] }
]
},
{
"id": "2010s_present",
"name": "The Modern Era",
"era": "2010s - Present",
"path": "eras/2010s_present/README.md",
"booths": [
{ "name": "Go", "year": 2009, "creator": "Griesemer, Pike, Thompson (Google)", "path": "eras/2010s_present/go/README.md", "paradigms": ["Concurrent", "Procedural"] },
{ "name": "Rust", "year": 2015, "creator": "Graydon Hoare (Mozilla)", "path": "eras/2010s_present/rust/README.md", "paradigms": ["Low-Level", "Functional", "Concurrent"] },
{ "name": "Swift", "year": 2014, "creator": "Chris Lattner (Apple)", "path": "eras/2010s_present/swift/README.md", "paradigms": ["Object-Oriented", "Functional", "Protocol-Oriented"] },
{ "name": "TypeScript", "year": 2012, "creator": "Anders Hejlsberg (Microsoft)", "path": "eras/2010s_present/typescript/README.md", "paradigms": ["Structural-Typing", "Functional", "Object-Oriented"] },
{ "name": "Zig", "year": 2016, "creator": "Andrew Kelley", "path": "eras/2010s_present/zig/README.md", "paradigms": ["Low-Level", "Imperative", "Metaprogramming"] }
]
}
],
"wings": [
{
"id": "functional",
"name": "Functional Programming",
"path": "paradigms/functional/README.md"
},
{
"id": "object-oriented",
"name": "Object-Oriented Programming",
"path": "paradigms/object-oriented/README.md"
},
{
"id": "low-level",
"name": "Low-Level & Systems Programming",
"path": "paradigms/low-level/README.md"
}
]
}