Как называется следующая парадигма программирования:
Код выполняется на основе набора логических тестов, принимающих значение true (пункт).Предложение состоит из операторов и операндов.Каждый операнд является значением / объектом.
Вместо явной оценки предложения, как это делается в императивных языках (например, обычное управление потоком, например if(){}
), предложение объявляется и привязывается к результирующему коду.Когда предложение выполнено, в любой момент в будущем код будет выполнен.
Итак, это в основном дерево зависимостей, которое повторно оценивает, должен ли код выполняться всякий раз, когда зависимость меняет состояние.
Например,
when(a && b && c < 3 && d.changes())
{
runThisCode();
}
Я ищуболее формальное имя и определение, и я ничего не нашел после его поиска.Это где-то между декларативным и императивным, но я никогда не видел ни одного языка или парадигмы, позволяющих это сделать.
Спасибо, Шон