2011-12-07 42 views
7

currying olmadan tek parametreye iki değeri geçen şu beta indirgeme türsüz Lambda calculus izin verilir neden anlayamıyorum:lambda hesap:

Özellikle
(λx.x y) (u v) -> ((u v) y) 

Bir iki parametre u ve v geçebilir anlayamıyorum λx.x parçasındaki tek bir parametreye x. Yukarıdakilere izin vermek için körleme kullanmamalı ve iki parametreye sahip olmamalı mıyım? Bu —

(λx.(λy.(x y))) (u v) 

cevap

11

gibi spesifik Bir u ve v

Sen iki parametre u ve v geçen değiliz iki parametre iletebilirsiniz anlayamıyorum. Tek bir değer veya terim olan (u v)'u geçiyorsunuz: v'a uygulanan u değeri.

sıradan aritmetik ile karşılaştırın: x+1 tek bir değeri ifade eder çünkü sin(x + 1) gibi bir bileşik dönem için böyle sin olarak bir işlev uygulasın, fonksiyon + iki argüman x ve 1 uygulama olsa.