Существуют ли ленивые императивные языки программирования? Если нет, то почему нет?
Если я не ошибаюсь, концепция "ленивого императивного языка программирования" имеет смысл.
Например, я предполагаю, что следующий код должен заставить программу печатать "7"
a <- 1
b <- a+5
a <- 2
print([b])
в то время как следующий код должен заставить программу печатать "6"
a <- 1
b <- [a+5]
a <- 2
print(b)
и следующий код должен заставить программу печатать строку "a+5"
a <- 1
b <- a+5
a <- 2
print(b)
Идея в том, что [..]
выравнивает выражение, выполняя оценку, используя текущие значения каждой переменной.
Вопрос. Существуют ли ленивые императивные языки программирования, и если нет, то почему? Есть ли какая-то конкретная причина, почему они не могут существовать?