stringtranslate.com

Список параллельных и параллельных языков программирования

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

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

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

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

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

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

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

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

На базе монитора

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

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

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

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

Модель актера

на основе CSP

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

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

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

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

  1. Том Фрювирт (9 июля 2009 г.). Правила обработки ограничений. Издательство Кембриджского университета. ISBN 978-0-521-87776-3.
  2. ^ «Использование потоков для одновременного выполнения кода — язык программирования Rust» . doc.rust-lang.org . Проверено 11 октября 2022 г.
  3. ^ Документация » Стандартная библиотека Python » Параллельное выполнение
  4. ^ «Использование передачи сообщений для передачи данных между потоками - язык программирования Rust» . doc.rust-lang.org . Проверено 11 октября 2022 г.
  5. ^ Алан Кей Ранняя история Smalltalk
  6. ^ «Язык программирования Crystal – параллелизм» . Проверено 10 августа 2018 г.