Суперкомпиляция и частичные вычисления до сих пор не вошли в широкую практику программирования. Почему и что делать?
Аннотация:
Такие методы метавычислений как суперкомпиляция и частичные вычисления появились около полувека тому назад. С тех пор они плодотворно развивались с получением глубоких научных результатов, созданием программных прототипов, однако до сих пор не используются в практике программирования, хотя их авторы предвидели для них большую перспективу для автоматизации программирования и ожидали быстрого достижения целей. В чем же дело? Мы рассматриваем историю развития программирования с точки зрения эволюционной концепции метасистемных переходов В.Ф. Турчина, чтобы выявить истоки методов метавычислений и их место в общей картине. Отмечаем, что в отличие от программных инструментов, легко входивших в практику, таких как, например, оптимизирующие компиляторы, эти методы не удалось реализовать так, чтобы их можно было использовать в автоматическом режиме, поскольку они содержат слишком много точек выбора решений, вариантов, степеней свободы, которые машина не может разрешить без помощи человека. Для дальнейшего продвижения к практике предлагаем уделить особое внимание погружению метавычислительных инструментов в современные среды программирования и разработке удобных человеко-машинных интерфейсов, где человек останется метасистемой высшего уровня, принимающей творческие решения. Кроме того, предлагаем включить суперкомпьютеры в арсенал инструментов разработчиков программ, включая метавычисления, как это произошло в прикладных инженерных областях, но почему-то разработка эффективных и надежных программ для критических областей применения не считается оправдывающей использование суперкомпьютеров.