Подтвердить что ты не робот

"Каждый язык был создан для определенной цели"

Я читал сообщение Почему язык важен (почему я предпочитаю С#) из "Dot Net Thoughts" и первого абзаца статья заканчивается этим утверждением:

... каждый язык был создан для конкретной цели.

Это заставило меня задуматься о "почему" существуют определенные языки... т.е. какова их конкретная причина их существования.

Моя цель в этом вопросе - перечислить как можно больше языков программирования и их основную причину того, почему они существуют... почему они используются; и это поможет людям решить, какой язык использовать для конкретных задач.

Языки, такие как C#, VB, Haskell, Eiffel, Perl, Python, Java и т.д.; процедурные языки, функциональные языки, объектно-ориентированные языки и т.д.

4b9b3361

Ответ 1

Только мои мнения:

С# - Microsoft хотела иметь собственную Java

Haskell - исследование чистых функциональных языков

Perl - манипуляция текстом

Python - читаемый язык сценариев

Процессуальные языки - легко компилируются для архитектур стиля фон Неймана

LISP и функциональные языки - помощь в разработке программного обеспечения снизу вверх

Ruby - OO-Perl

Lua - Встраиваемый язык сценариев

C - переносимый ассемблер

С++ - переносимый ассемблер с объектами

Emacs Lisp - схема или CL не хватило производительности в то время

Паскаль. Обучение программированию. По какой-то извращенной причине люди настаивали на том, чтобы использовать это для программного обеспечения для производства.

Языки сборки. Написание машинного языка и разрешение адресов JMP вручную на бумаге утомительно. (Я пробовал)

Силовая оболочка - замените скрипты BAT

PHP - для создания интернетов

Javascript - для создания интернетов 2.0

APL - сделать устаревшие конкурсы кодирования устаревшими

Ответ 2

Brainfuck существует, чтобы показать, что вы можете написать компилятор для полного языка Turing в 200 байт:)

Ответ 3

  • Perl, потому что разработчики должны научиться ценить боль.
  • С++, потому что 5 человек на планете должны иметь возможность создавать операционные системы и встроенные системы и потому, что D слишком далеко в алфавит
  • C, потому что B нужен преемник
  • D, потому что C нужен "реальный" преемник
  • Python, потому что скобки для скобок написаны плохо для вашего здоровья.
  • Java, потому что С++ был слишком сложным, и Гослинг думал (ложно), что нам нужен язык без множественного наследования
  • VB, потому что детям Билла Гейтса необходимо "наследование VB"
  • С#, потому что Java начала кражу рыночных акций с "Visual С++"

Но я думаю, что этот список может быть спорным для некоторых...;)

Ответ 4

PHP Первоначально стоял "Личные домашние страницы", который говорит все, что я думаю.

APL Стенды для "языка программирования" и были созданы для "обучения и анализа тем, связанных с применением компьютеров"

TCL Выраженный "Tickle" был "рожден из разочарования" Джона Оустерхаута и должен был быть встроен в другие приложения

Applescript. Являлся прогрессией от приложения Hypertalk для приложений Appper HyperCard и был, как и TCL, предназначен для внедрения в другие приложения для облегчения написания сценариев.

Это все. Моя история языков программирования невелика.

Ответ 6

Python: Язык программирования, который легко читать и использовать.

APL: Язык, который очень хорош в решении математических задач.

J и K: Оба пытаются сделать APL пригодным для использования с qwerty-клавиатурами.

Java: Сделано как лучший С++, с упором на использование одной кодовой базы.

С++: Сделано лучше C с объектной ориентацией.

( Qt: Пока он не является языком программирования, он расширяет С++, о котором стоит упомянуть. Qt - это инструментарий для графического интерфейса пользователя, анализатор базы данных и многое, многое другое. платформа).

C: Лучше B (серьезно)

Objective-C: Apple пытается улучшить C с объектной ориентацией.

Perl: Язык, созданный для обработки текста, но в настоящее время широко используемый язык сценариев. Он также основывается на идее "не должно быть более одного способа сделать это".

Haskell: Экспериментируйте, чтобы сделать полностью чистый функциональный язык, с большим упором на функциональность.

Lisp: Первоначально названный процессор списка. Сегодня это язык, который стал пионером многих методов, используемых современными языками. Lisp является стандартным, а не фактическим языком. Иногда называется "программируемый язык программирования".

Общий Lisp: Общая реализация Lisp. У этого есть много особенностей, которые получили современные языки, но также многие функции, которые не получили современные языки.

Схема: Предназначен для самого чистого языка. В основном это использовалось как исследование.

JavaScript: Язык сценариев, основанный на некоторых материалах, которые могут быть Java. Помимо имени, это не имеет ничего общего с Java. Он использовался почти исключительно как скриптовый язык в Интернете. JavaScript основан на стандартном ECMAScript.

Lua: Язык сценариев с целью создания хорошего языка сценариев. Бесполезно для всего остального.

XML: Предназначен для создания унифицированных форматов данных, в первую очередь для обмена данными между платформами. Высоко расширяемый, например, XHTML (веб-страница) может вставлять документы SVG (Vector graphics) и MathML (Guess what), предоставляя XHTML почти бесконечные возможности.

CSS: Предназначен для оформления документов HTML и XHTML.

Языки эзотерического программирования: Языки, предназначенные для запутывания и использования.

Теперь я не могу назвать другие языки, надеюсь, это было полезно:)

Ответ 7

Я не думаю, что это полезное утверждение. Существуют языки общего назначения, а некоторые языки, которые изначально служили определенной цели, с тех пор выросли до довольно общего (например, Perl). Некоторые языки также воспринимаются как особые цели, хотя они были с самого начала (Lisp).

В этой статье также показано очень узкое представление о ландшафте языка программирования.

Ответ 8

Ну, наиболее очевидным является COBOL: Общий бизнес-ориентированный язык И вы можете видеть это, читая исходный код. У Python были в основном несколько парадигм и четкая простота в виду (однако всегда можно спорить об этом, я бы согласился).

Ответ 9

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

Например, " Scala - это язык программирования общего назначения, предназначенный для выражения общих шаблонов программирования в краткой, элегантной форме и типе безопасный путь". C и С++ являются более распространенными языками общего назначения.

И теперь для списка языков и того, на что они фактически используются вместо того, что люди думают о них:

PHP, ASP, JSP, Ruby, Python: Веб-приложения ( Haskell тоже начинают считаться здесь [спасибо Reddit])

Javascript: AJAX, DOM-манипуляция

BASIC, VB: Быстрое прототипирование, обучение

AWK: Текстовая обработка

C и co.: система (ОС и т.д.), прикладное программное обеспечение, драйверы устройств, встроенные системы, серверные/клиентские приложения и т.д. /

Цель C: iPhone

Lisp, Пролог: AI

Erlang: Многопоточное, параллельное, отказоустойчивое программирование.

Scala, Haskell: Не удалось найти какую-либо ясную вещь, они оба кажутся довольно общими (я не использую ни одного).

Паскаль: Обучение

Эйфель: Финансы, аэрокосмическая промышленность, здоровье, игры и обучение (по-видимому).

R: Статистические вычисления и графика.

Ответ 10

Fortran - выполнить численные вычисления как можно быстрее.

Ответ 11

INTERCAL: Чтобы повысить воспринятый интеллект разработчиков, сделав их код настолько запутанным, никто его не понимает. =:)

Ответ 12

Perl. Язык клей для системных администраторов, который теперь вырос до языка программирования общего назначения.

Ответ 13

Я должен воспользоваться этой возможностью, чтобы упомянуть Piet, единственным принципом дизайна которого является: Программный код будет находиться в форма абстрактного искусства. И да, это настоящий язык, в том смысле, что для него есть переводчики, и несколько рабочих программ. Здесь тот, который генерирует простые числа:

генератор простого числа, написанный, я имею в виду, нарисованный в Piet http://www.dangermouse.net/esoteric/piet/erat2.png

Я провел, вероятно, полчаса или около того, пытаясь нарисовать маленькую маленькую программу, которая могла бы определить, было ли число четным или нечетным.

Ответ 14

R-язык

Для статистических вычислений.

Ответ 15

J

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

Ответ 16

Ada - Разработан Министерством обороны для критически важных встроенных систем реального времени.