August 14, 2006

Снова про языки программирования

Сегодня RSS со страницы Пола Грэма вывалил кучу разных ссылок на его старые заметки и статьи. Среди них была и такая (http://www.paulgraham.com/fix.html).

Позволю себе перевести её:

Кевин Келлегер предложил интересный способ сравнивать языки проргаммирования: описывать каждый в терминах проблемы, которую он решает. Интересно то, как много языков можно описать таким образом и как удачно.

Algol: Ассемблер слишком низкоуровневый.

Pascal: В Алголе нет достаточного количества типов данных.

Modula: Паскаль слишком слаб (wimpy)  для программирования систем.

Simula: Алгол не достаточно хорош для моделирования (simulations).

Smalltalk: В симуле не всё является объектом.

Fortran: Ассемблер слишком низкоуровневый.

Cobol: Фортран просто ужасен! (scary)

PL/1: В Фортране недостаточно типов данных.

Ada: В каждом из существующих языков чего-то не хватает.

Basic: Фортран ужасен!

APL: Фортран недостаточно хорош для операций с массивами.

J: Для АПЛа нужен свой набор символов (character set).

C: Ассемблер слишком низкоуровневый.

C++: С слишком низкоуровневый.

Java: С++ это ошибка природы (kludge). И Майкрософт пытается нас раздавить.

C#: Джава подконтролтьна Sun.

Lisp: Машины Тьюринга - это неудобный способ описывать вычисления.

Scheme: MacLisp - это ошибка (kludge)!

T: Scheme не поддерживает библиотек.

Common Lisp: Слишком много диалектов Лиспа.

Dylan: Схема не поддерживает библиотек и синтаксис Лиспа просто ужасен.

Perl: Командные языки оболочки (shell scripts) не достаточно похожи на настоящие языки программирования.

Python: Перл - это ошибка.

Ruby: Перл - это ошибка, а синтаксис Лиспа просто ужасен.

Prolog: Программирование - не достаточно похоже на логику.


Comments: Post a Comment



<< Home

This page is powered by Blogger. Isn't yours?