2010-06-06 2 views
3

Являются ли языки программирования Fortran, Cobol, Basic и Forth высокого уровня?Являются ли языки программирования Fortran, Cobol, Basic и Forth?

А если нет, то где, где первые языки программирования высокого уровня?

Были ли первые объектно-ориентированные языки?

+5

Что вы определяете термины высокоуровневых и объектно-ориентированных языков программирования? Без определений достоверный ответ на этот вопрос не может быть дан. Взгляните на http://c2.com/cgi/wiki?HighLevelLanguage как пример того, почему определение имеет значение. – Wildcat

+0

@ kermisto: Я думаю, что Аарон на самом деле просит определение термина SO. – intuited

ответ

2

Высокий уровень не является двоичным значением. Существует целый ряд языков в спектре от низкого уровня до высокого уровня.

Языки, которые вы назвали, являются более высоким уровнем, чем сборка, но ниже уровня, чем Lisp.

По Wikipedia:

Первый язык программирования высокого уровня, которые будут предназначены для компьютера был Plankalkül, созданный Конрадом Цузе.

+0

Plankalkül был разработан, но никогда не реализовывался до 2000 года. Это делает его немного отличным от Джонни. –

7

Fortran - первый язык программирования высокого уровня.

Simula - первый объектно-ориентированный язык.

+4

Simula-67, чтобы быть действительно ничтожным. –

1

Первым языком OO был, вероятно, Симула, хотя мало кто знал это, пока не появился Smalltalk.

+2

Simula-67, а не только Simula. Симула - я не был ООП. –

+1

Он сказал, что Симула не Симула-я. Simula - обычное имя для Simula I и Simula 67. И даже создатели языка говорили, что: «SIMULA I (1962-65) и Simula 67 (1967) - это два первых объектно-ориентированных языка». Из http://heim.ifi.uio.no/~kristen/FORSKNINGSDOK_MAPPE/F_OO_start.html – Wildcat

1

Они делают, так как они скрывают компьютерное оборудование абстракции, поэтому их можно считать высокоуровневыми.

Первым объектно-ориентированным языком был SmallTalk, согласно Википедии.

+4

Википедия ошибочна. Simula-67, как вы можете догадаться по названию, был сделан в 1967 году. Smalltalk был сделан в 70-х годах. –

+0

Он упрощает. Википедия на самом деле говорит: «Язык программирования Simula первым представил концепции, лежащие в основе объектно-ориентированного программирования», в то время как «Smalltalk» был первым языком программирования, который называется * объектно-ориентированным ». – Ken

+2

@Ken: Smalltalk, возможно, был _called_ объектно-ориентированным, но Simula _was_ объектно-ориентированным и представил концепцию класса. –

0

Это все относительно. C - низкий уровень для тех, кто пишет Python, C++ для разработчиков Java и так далее.

Что касается вопроса ОП, то Fortran, безусловно, является высоким уровнем. Современный Fortran почти похож на MATLAB.

2

«Высокий уровень» может иметь разные значения - некоторые языки находятся на более высоких уровнях, чем другие, абстрагируясь дальше от машины. Оригинальный FORTRAN был доставлен в 1957 году (http://en.wikipedia.org/wiki/Fortran) и был, AFAIK, первым реализованным языком на более высоком уровне, чем сборка. Другие языки с тех пор можно отнести к категории более высокого уровня. Например, текущий стандарт Fortran, Fortran 2003, имеет гораздо более высокий уровень абстракции, чем исходный FORTRAN, обеспечивая операции массива, некоторые функции OO и т. Д.

2

COBOL и FORTRAN (как они сейчас), как более высокий уровень, чем C. Абстракция базовой машины больше. Нужно ожидать, что программа COBOL - даже значительная сложность - для компиляции в Windows или * Nix без изменений. То же самое касается Fortran (хотя мои знания более устарели).

последних версий COBOL очень высокий уровень - см управляемого COBOL здесь: http://knol.google.com/k/alex-turner/micro-focus-managed-cobol/2246polgkyjfl/4#

Обратите внимание - я работаю на COBOL компании - Micro Focus. Это может означать, что мой ввод смещен :)

1

CoBOL технически считается «высокоуровневым» языком. Он имеет некоторые функции и выполняет некоторые элементы управления памятью. Но в масштабах языков я бы оценил его примерно на половину шага выше ассемблера. Это мое приближение из моего опыта со всеми этими вопросами, пожалуйста, отредактируйте ответ, если вы хотите внести еще несколько языков.

  • 0 - двоичный машинный код
  • 0,5 - Ассемблер
  • 1.0 - COBOL, FORTRAN, Pascal, C
  • 1.5 - C++
  • 2,0 - VB6
  • 2.5 - C#, VB. Net, Java и т. Д.
  • 3.0 - Javascript, CSS, SQL