Интернет магазин китайских планшетных компьютеров



Компьютеры - Сравнение языков программирования

22 января 2011


Оглавление:
1. Сравнение языков программирования
2. Типизация
3. Компилятор/интерпретатор
4. Управление памятью
5. Управление потоком вычислений
6. Типы и структуры данных
7. Объектно-ориентированные возможности
8. Функциональные возможности
9. Разное
10. Стандартизация



 Условные обозначения 
+ Указанная возможность присутствует
- Указанная возможность отсутствует
+/- Возможность поддерживается не полностью
-/+ Возможность поддерживается очень ограниченно
 ? Нет данных
x Постановка вопроса не применима к языку

В приведенной ниже таблице отмечено наличие или отсутствие тех или иных возможностей в некоторых популярных сегодня языках программирования. Столбцы упорядочены по алфавиту. Если возможность в языке недоступна напрямую, но может быть эмулирована с помощью других средств, то в таблице отмечено, что её нет.

При заполнении таблицы учтены только фактические данные, при том, что наличие возможности не обязательно является преимуществом языка, а отсутствие — недостатком.


Парадигмы

Возможность Язык
Ada C C++ C# D Eiffel Erlang Prolog F# Groovy Java JavaScript Haskell Common Lisp Nemerle Perl PHP Python Ruby Scala Smalltalk Tcl VB.NET Delphi OCaml PureBasic
Императивный + + + + + + - - + + + + +
+ + + + + + + + + + + + +
Объектно-ориентированный + - + + + + -
-
+ + + +
-
+ + + + + + + + + + + + -/+
Функциональный - - +/- +/- +/- +/- + + + + - +/- + + + + +/- +/- + + + + +/- -/+ + +/-
Рефлексивный - - - -/+ -  ? + + -/+ -/+ -/+ + - + -/+ +/- + + + -/+ + + -/+ -/+ -  ?
Обобщенное программирование + - + + + +/- + + + + + + + + + + + + + + + - + + + -/+
Логический - - - - - - - + - - - - +/-
+/-
+/- - - - -  ? +/- - - - -  ?
Декларативный - - - -/+ -/+  ? + + + + - +/- + + + -/+
+ + + + +/- - +/- - + +/-
Распределенный +
+/-
+/-
-/+
- + + + - -/+ + - +
+/- - - - -/+ -/+  ? +/-  ? - - - -
Ada C C++ C# D Eiffel Erlang Prolog F# Groovy Java JavaScript Haskell Common Lisp Nemerle Perl PHP Python Ruby Scala Smalltalk Tcl VB.NET Delphi OCaml PureBasic


Просмотров: 8139


<<< Лексема (информатика)
Хронология языков программирования >>>