Будущее языков программирования
(1/1)
uuu:
Откровенно говоря - сомневаюсь есть ли у "языков программирования" какое-либо "будущее".
У меня есть подозрение - что "языки программирования" (такие как ФОРТРАН) возникли просто в результате какого-то технологического недоразумения.
Когда-то очень давно считалось - что компьютер должен "общаться" с человеком на "человеческом языке" (на естественном языке). Позже в системах перевода столкнулись с массой трудностей. В результате пошли по очень сильно "компромиссному пути". Стали создавать "языки для машин". Но ведь на этих языках надо было "объясняться". А даже такие "языки" накладывают определённый отпечаток на мышление. В резудьтате человек фактически "теряет сам себя".
Может быть идея "бутлерианского джихада" у Френка Герберта в "Дюне" была и не такой уж глупой?
Появление и развитие языков программирования оказало вроде бы существенное влияние на ЕЯ (естественные языки). Фактически "специализированный сленг" в различных видах деятельности становится всё больше похожим на языки программирования. Когда-то писатели-фантасты пугали "бунтом машин". Но ведь люди , подстраиваясь под компьютеры , сами начинают напоминать машины.
Uncle Mike:
Ну лет 30-50 еше просуществуют. Только языки программирования все увеличивают свою степень "высокого уровня" - условно говоря - несколько нажатий - и интерфейс готов.
Правда еще, к счастью, нет (такой же степени) автоматизации программирования математики (Matlab не в счет). Тут еще есть место для творчества.
uuu:
Quote from: Uncle Mike
Ну лет 30-50 еше просуществуют. Только языки программирования все увеличивают свою степень "высокого уровня" - условно говоря - несколько нажатий - и интерфейс готов.
...Тут еще есть место для творчества.
Основной целью развития "языков программирования" вообще-то считалось уменьшение числа ошибок в программах. Когда первые численные алгоритмы начали "преобразовывать в пакеты прикладных программ" - то неожиданно обнаружили , что "алгоритмы не работают"! (на бумаге вроде бы работают , а в машине - как-то не очень). Проблем ведь было очень много (и не только с ошибками округления).
Общеизвестный факт - процесс исправления одной ошибки в программе связан с потенциальной возможностью внесения нескольких новых ошибок в модифицируемую программу.
Примерно по этой причине практически умерли языки с "большим словарным запасом" (с большим числом различных инструкций). Приходится выбирать между минимизацией синтаксических конструкций и удобством использования и однозначностью интерпретации описания семантики.
Диалоговые интерфейсы (WYSIWYG и т.д.) только "маскируют проблему". Проект машин 5-го поколения себя тоже не оправдал (разве что изобрели новые формы зацикливания программ).
Constraint Programming - стало одним из признаков капитуляции перед растущей вычислительной сложностью прикладных задач.
Uncle Mike:
>Общеизвестный факт - процесс исправления одной ошибки в программе связан
>с потенциальной возможностью внесения нескольких новых ошибок в
>модифицируемую программу.
Это да :-)
>первые численные алгоритмы начали "преобразовывать в пакеты прикладных
>программ" - то неожиданно обнаружили , что "алгоритмы не работают"!
Почему это?
uuu:
Quote from: Uncle Mike
Почему это?
"Не работают" - это означало что нужно было очень долго ждать результата , а вместо результата могло вообще получиться "что-то непонятное".
Общеизвестный факт - практическое лобовое применение метода Гаусса к решению систем линейных уравнений может привести к неправильным результатам (там правда в основном из-за ошибок округления).
С задачами сортировки и поиска - всё было даже смешно (о приемлемом числе операций сравнения задумались ведь далеко не сразу). :)
Поиск на графе на машине с ограниченным объёмом памяти (например 256 слов) - это ведь довольно трудно. B)
Это все очень упрощённо и только "для примера". Там еще одна интересная "закономерность" после
60-70-х годов прошлого века компьютеры продолжали "усложняться" а "языки программирования" скорее испытывали даже некоторую "тенденцию к упрощению". B)
Navigation
[0] Message Index