Edge Rewrite
// HTMLRewriter · presentation

This page was redesigned at the edge.

Cloudflare fetched the original article and streamed it through HTMLRewriter to apply an entirely new visual system without rebuilding the source page.

// request.cf · coarse context

A page that knows where it met you.

Only coarse request metadata is shown. This demo does not display or persist visitor IP addresses.

Country
US
Cloudflare location
CMH
Connection
HTTP/2
Language
Not provided

Ray ID: a42b149ec8533564

Jump to content

// Workers AI · dad joke modeWhy was the list of programming languages forked? It wanted to branch out.

From Wikipedia, the free encyclopedia

This article lists concurrent and parallel programming languages, categorizing them by a defining paradigm. Concurrent and parallel programming languages involve multiple timelines. Such languages provide synchronization constructs whose behavior is defined by a parallel execution model. A concurrent programming language is defined as one which uses the concept of simultaneously executing processes or threads of execution as a means of structuring a program. A parallel language is able to express programs that are executable on more than one processor. Both types are listed, as concurrency is a useful tool in expressing parallelism, but it is not necessary. In both cases, the features must be part of the language syntax and not an extension such as a library (libraries such as the posix-thread library implement a parallel execution model but lack the syntax and grammar required to be a programming language).

The following categories aim to capture the main, defining feature of the languages contained, but they are not necessarily orthogonal.

Coordination languages

[edit]

Dataflow programming

[edit]

Distributed computing

[edit]

Event-driven and hardware description

[edit]

Functional programming

[edit]

Logic programming

[edit]

Monitor-based

[edit]

Multi-threaded

[edit]

Object-oriented programming

[edit]

Partitioned global address space (PGAS)

[edit]

Message passing

[edit]

Actor model

[edit]

CSP-based

[edit]

APIs/frameworks

[edit]

These application programming interfaces support parallelism in host languages.

See also

[edit]

References

[edit]
  1. ↑ Thom Frühwirth (9 July 2009). Constraint Handling Rules. Cambridge University Press. ISBN 978-0-521-87776-3.
  2. ↑ "Using Threads to Run Code Simultaneously - The Rust Programming Language". doc.rust-lang.org. Retrieved 2022-10-11.
  3. ↑ "Using multiple threads". Godot Engine (stable) documentation. Archived from the original on 2026-01-28. Retrieved 2026-01-30.
  4. ↑ Documentation » The Python Standard Library: Concurrent Execution
  5. ↑ "Using Message Passing to Transfer Data Between Threads - The Rust Programming Language". doc.rust-lang.org. Retrieved 2022-10-11.
  6. ↑ Alan Kay The Early History Of Smalltalk
  7. ↑ "Crystal Programming Language – Concurrency". Retrieved 10 August 2018.