Я немного участвовал в декларативном и императивном программировании, и я пришел к (возможно ложному) пониманию, что декларативное программирование - это более или менее просто абстракция.Может ли программирование быть действительно декларативным?
Например, в соответствии с тем, как я понимаю эти понятия, вызов метода для выполнения чего-либо будет декларативным, тогда как реализация метода является обязательной (необязательно, хотя и не декларативной).
Таким образом, кажется, что везде, где у вас есть декларативный код, где-то вниз по линии, он должен полагаться на не декларативный код для реализации. Является ли это просто природой, или существуют ли на языках, которые являются 100% декларативными (что я даже не могу начать концептуализировать)?
Пожалуйста, исправьте меня, если мое понимание этих концепций отключено! Хотя я примерно на полпути через B.A. в Computer Science, я чувствую, что до сих пор мне учили только «набирать материал, чтобы правильные вещи случались при запуске кода».
Спасибо.
Я не эксперт в этом вопросе, но, похоже, ваш вопрос может быть лучше подходит для http://programmers.stackexchange.com/, который посвящен концепциям, а не решениям. Вы также можете попробовать Quora (http://www.quora.com/). –
Декларативный код нуждается в какой-то стратегии исполнения. На общих компьютерных архитектурах на данный момент, которые в какой-то момент будут полагаться на какую-то императивную программу в реализации. – shuttle87
Часть этого объясняется тем, что это верно для любого уровня организации более высокого языка. Все в конечном итоге сводится к чему-то в наборе инструкций процессора, и на этом уровне существует только настоятельная необходимость. У вас недостаточно набора для выполнения функциональных, декларативных или других функций. В этом смысле тривиально верно, что декларативные, функциональные и множество других языковых организаций более высокого уровня «где-то вниз» должны полагаться на [a] не декларативную реализацию]. –