Список языков параллельного и параллельного программирования - Википедия - List of concurrent and parallel programming languages

В этой статье перечислены параллельные и языки параллельного программирования, классифицируя их по определению парадигма. Языки параллельного и параллельного программирования включают несколько временных рамок. Такие языки предоставляют конструкции синхронизации поведение которого определяется параллельным модель исполнения. А язык параллельного программирования определяется как тот, который использует концепцию одновременного выполнения процессов или потоков выполнения как средство структурирования программы. Параллельный язык может выражать программы, которые выполняются более чем на одном процессоре. Приведены оба типа, поскольку параллелизм - полезный инструмент для выражения параллелизма, но в нем нет необходимости. В обоих случаях функции должны быть частью синтаксиса языка, а не расширением, например библиотекой (библиотеки, такие как библиотека posix-thread, реализуют параллельный модель исполнения но не хватает синтаксиса и грамматики, необходимых для языка программирования).

Следующие категории призваны отразить основную определяющую особенность содержащихся языков, но они не обязательно ортогональны.

Языки координации

Программирование потока данных

Распределенных вычислений

Событийное и аппаратное описание

Функциональное программирование

Логическое программирование

На основе монитора

Многопоточный

Объектно-ориентированного программирования

Разделенное глобальное адресное пространство (PGAS)

Передача сообщений

Актерская модель

На базе CSP

API / фреймворки

Эти интерфейсы прикладного программирования поддерживают параллелизм в основных языках.

Смотрите также

Рекомендации

  1. ^ Том Фрювирт (9 июля 2009 г.). Правила обработки ограничений. Издательство Кембриджского университета. ISBN  978-0-521-87776-3.
  2. ^ "Threads - язык программирования Rust". doc.rust-lang.org. Получено 2017-09-15.
  3. ^ "Передача сообщений - язык программирования Rust". doc.rust-lang.org. Получено 2017-09-15.
  4. ^ Алан Кей Ранняя история Smalltalk
  5. ^ "Язык программирования Crystal - параллелизм". Получено 10 августа 2018.