Другие языки программирования и технологии

Какими свойствами должен обладать язык программирования, чтобы называться высокоуровневым?

Какими свойствами должен обладать язык программирования, чтобы называться высокоуровневым?
быть в топе высокоуровневых языков
Alexander Bushuev
Alexander Bushuev
65 646
Лучший ответ
Должен быть независимым от системы команд конкретного процессора / конкретной виртуальной машины.
Oleq Svetozarov
Oleq Svetozarov
62 570
Текст программы не должен привязываться к особенностям реализации (операционная система, тип процессора и т. п.)
Андрей Востров
Андрей Востров
72 364
Должен быть максимально близок к обычному человеческому языку
Серёга Мел
Серёга Мел
86 241
Евгений Половинкин Никоим образом. Наоборот, как и в математике. Должен уметь выражать длинные описания на естественном языке в очень коротких предложениях.
Только высокий уровень абстракции.

Например, должна быть возможность не выделять память вручную - как за счет контейнеров из стандартной библиотеки языка, уже содержащих в себе механику выделения и очистки памяти, так и за счет возможностей компилятора\интерпретатора.
Исходя из этого C++ уже высокоуровневый язык, а Си нет.
Интересная ситуация с ассемблером Smali - ответчики выше скажут, что он низкоуровневый, потому что работает только в JVM, однако он выше уровнем, чем Си, там в 1 строчку делается то, что в Си делалось бы 100 строчками, все портят другие моменты, например отсутствие поддержки циклов кроме goto/goto-like.

Стандартная и другие библиотеки языка должны позволять простыми конструкциями делать достаточно сложные вещи, без необходимости программисту указывать те детали, которые могут быть заданы по умолчанию.
Исходя из этого Android-овское API более низкоуровнево, чем Web-овская BOM (с alert() и прочими API), однако Android-овские виджеты более высокоуровневы, чем HTML и CSS, требующие задавать облик всех элементов с нуля и содержащие лишь малое количество примитивных элементов. HTML и CSS лежат почти на том же уровне, что и Сишный WinAPI. Во как!
Андрей Радчук
Андрей Радчук
92 464
Андрей Востров Как измерить уровень абстракции?
Иметь высокий уровень абстракции
Андрей Востров как измерить уровень абстракции?