В программировании теории языка , то вызов по толчку значение ( CBPV ) парадигма, [1] вдохновлены монадами , позволяет писать семантики лямбды-исчисления без написания два варианта , чтобы иметь дело с разницей между вызовом по имени и по призванию по стоимости . Для этого CBPV вводит термин «язык», который различает вычисления и значения, согласно лозунгу « значение - это значение» ; этот термин «язык» имеет единый порядок оценки. Однако, чтобы оценить термин лямбда-исчисления в соответствии с вызовом по имени ( CBN ) или вызовом по значению ( CBV )стратегии сокращения , можно перевести термин в CBPV, используя стратегию перевода «вызов по имени» или «вызов по значению», что приводит к появлению различных терминов. Оценка результата преобразования «вызов по значению» соответствует оценке исходного термина с помощью стратегии «вызов по значению»; оценка результата преобразования вызова по имени вместо этого соответствует оценке исходного термина с помощью стратегии вызова по имени.
Это особенно полезно при работе с семантикой различных побочных эффектов, таких как неопределенность, изменяемое состояние или недетерминизм. Вместо предоставления двух вариантов семантики, одного для порядка оценки вызова по имени и одного для порядка вызова по значению, можно просто указать семантику для языка терминов CBPV; можно получить две семантики для лямбда-исчисления, составив эту семантику CBPV с теми же переводами CBV и CBN из лямбда-исчисления.
Рекомендации
- ^ Пол Блейн Леви. «Ценность вызова по нажатию: парадигма поглощения» (PDF) . Цитировать журнал требует
|journal=
( помощь )