← Back to catalogue
Research draft

programming language

vr.tr.programming-language · INF.MED

Let an agent explain programming languages by paradigm, typing, ecosystem and standard, and help people choose and learn languages.

Thing Registry Information and virtual systems

Research draft, second pass

A second pass drafted this model: the structure a model of this thing needs, and what is known about it in the world. The line under this one says how the second half was obtained - researched against sources, or recalled without web access, in which case nothing here was read anywhere and every claim is a lead to verify. Unreviewed either way.

written by Claude from model knowledge without web access - no source was read, every claim is a lead to verify

Researched by: Claude

Purpose and description

Let an agent explain programming languages by paradigm, typing, ecosystem and standard, and help people choose and learn languages.

A formal language for expressing computations that computers can execute, defined by syntax and semantics and implemented by compilers or interpreters, including general-purpose, declarative, scripting, workflow and proof languages; many are standardised, such as C, ECMAScript and SQL.

What it is for: Writing software and specifications.

It can be compare languages for a task; explain paradigms and type systems; find official specifications and documentation; learn a new language.

Distinguishing features

Formal syntax and semantics

Implemented by tools

Paradigms and type systems vary

Ecosystems of libraries

What it looks like

Text-based code following a grammar, sometimes visual block languages.

How it is recognised

Keywords, syntax and file extensions

Compilers and interpreters

Markup languages describe documents rather than computation

Related models

is a kind of - category

computer language

is used in - practice

computer programming

is implemented by - tool

compiler or interpreter

is used to query - application

database

In practice

Families and kinds

general-purpose languages

declarative and query languages

scripting and glue languages

functional languages

proof and specification languages

Standards and regulation

ISO/IEC language standards such as C and C++

ECMA-262 ECMAScript

ISO/IEC 9075 SQL

Failure modes and hazards

Choosing a language by hype alone

Memory safety issues in some languages

Outdated version information

Also called

proof languagegeneral-purpose programming languageglue languageAgile programmingworkflow languagedeclarative programming languagepseudo languageprogramming language based on Japanesepage description languageWeb programming languagedynamic programming languagemulti-paradigm programming language1st-generation programming language3rd-generation programming languageframe languageprogramming language extensionPayjar (Programinglanguage)miniKanrenhybrid programming languageUnisys MCP programming languages2nd-generation programming languagescripting languagemini-languageinterpreted languagehigh-level programming languageimperative programming languagesynchronous programming language4th-generation programming languagetransaction control languagedialectconcurrent programming languagedata-driven programming languageagent-oriented programming languagestructured programming languagearray programming languageautomata-based programming languageconstraint programming languagedataflow programming languageflow-based programming languagereactive programming language

+94

Where this came from

wikidata · CC0 1.0

Also registered as vr.tr.programming-language

Drafted structure

Bundle to layer to finding to question, as the second pass will find it: 4 bundles · 8 layers · 8 findings · 16 questions.

Choose Selecting a language.

Tasks drive choice.

Task

Fit for purpose.

Task

Fit for purpose.

  1. Which language suits this task, platform and team? action
  2. What are the trade-offs in performance, safety and ecosystem? boundary

Ecosystem

Libraries and tools.

Ecosystem

Ecosystem.

  1. Which libraries, package managers and tools are mature for this language? provenance
  2. Is it actively maintained? provenance
Concepts Language design.

Design shapes use.

Paradigm

Paradigms.

Paradigm

Paradigms.

  1. Which paradigms does this language support? definition
  2. How do they affect program design? definition

Types

Type systems.

Types

Type systems.

  1. Is the language statically or dynamically typed, and how strong are its guarantees? definition
  2. How does it handle memory safety? definition
Reference Specifications.

Standards define languages.

Spec

Specification.

Spec

Specification.

  1. Where is the official specification or standard for this language version? provenance
  2. Which version is current? provenance

Docs

Documentation.

Docs

Documentation.

  1. Where is the official documentation and tutorial? provenance
  2. Which community resources are reliable? provenance
Learning Learning languages.

Practice builds skill.

Start

Getting started.

Start

Getting started.

  1. What is a good first project in this language? action
  2. How should the toolchain be installed? action

History

Language history.

History

History.

  1. Who created this language and when, according to reliable sources? provenance
  2. Which languages influenced it? provenance

What the second pass must settle

  • Should each language be a separate entry?
  • How should specifications be linked?
  • How should version histories be recorded?