Идеальный язык программирования. Какой он?

by Темных Сергей 26.03.2009 17:33:00

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

Сейчас все решения (начиная от того, каким способом сортировать массив, и кончая как переменную вывести на экран) — принимает человек. Небольшую часть решений (как переменные размазать по регистрам, какие методы сделать inline) — принимает компьютер.

Причем, во время принятия своих решений — и комьютер, и человек — в целом, закрыты от диалога.

Участие компьютера видится следующим образом:
1. Программист ставит задачу — взять данные слева, выбрать из них десять максимальных и положить направо.и так делать постоянно при изменении данных слева.
2. Компьютер — 'Ok' и побежал думать.
3. Далее есть несколько вариантов развития:
а) идеальный — комп выдает Ок, я все разрюхал, вот есть три варианта решения — один побыстрее, другой — менее требовательный к памяти
b) реальный — комп пошуршал минут 5, и выдает — часть задачи я уже разрюхал, но вот в паре мест мне нужна помощь в том, какой алгоритм выбрать, программист подсказывает (вместе с компом решает трудное место), комп шуршит дальше.


2. Появление и развитие неформальных языков.
Большинство крупных прикладных задач (начиная от любой оптимизации и кончая "красивым" размещением контролов на экране) — по своей сути неформальны.

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



ps
Замечу, что пункт 1 сложен в применении без п. 2, т.к. сейчас при принятии решений программист руководствуется кучей неформальных правил (начиная от стандартов написания кода, кончая его пониманием эффективности кода).

но для того, чтобы п.1 и п.2 были возможны, необходимо чтобы код, кроме вопросов что и как делать должен отвечать на вопросы зачем и почему мы это делаем.

 

ps

на первый взгляд, это похоже на пролог, но хочется другого..

У пролога есть один большой и жирный минус — он не подразумевает диалог с программистом.
т.е. если задача неподъемная, то комп не говорит — у меня здесь проблема, мне нужно подумать пару лет и т.д.
также прологу нельзя сказать — ну, реши хоть как-нибудь, давай вот в этом месте мы "схитрим" и т.д.

 

Оценок нет

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Похожие записи

Powered by BlogEngine.NET 1.3.1.0
Theme by Mads Kristensen

Сергей Темных

Модулятор


Calendar

<<  Июнь 2017  >>
повтсрчепясуво
2930311234
567891011
12131415161718
19202122232425
262728293012
3456789

View posts in large calendar

Страницы

    Последние комментарии

    Категории

    None


    Disclaimer

    The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

    © Copyright 2017

    Sign in