2013-07-26 21 views
18

Hutton Razor jest trywialny język wyrażeń ze stałymi oraz dodatkowo:Gdzie jest zdefiniowane "Brzytwa Huttona"?

data HR = Const Int 
     | HR :+: HR 

eval :: HR -> Int 
eval (Const n) = n 
eval (e1 :+: e2) = eval e1 + eval e2 

Wydaje się w wielu przykładach programowania w internecie, na przykład [1, 2, 3, , ]. Czy ktokolwiek wie, gdzie to jest najpierw zdefiniowane, może przez Grahama Huttona w gazecie?

+0

To pytanie wydaje się być nie na temat, ponieważ dotyczy udokumentowanego odniesienia. – madth3

Odpowiedz

2

Hutton and Wright's 2004 "Compiling Exceptions Correctly" opisuje taki język. Nie używa terminu "Hutton's Razor" (ani tego nie oczekiwalibyśmy), ale wprowadza ten minimalny język z wystarczającą motywacją, by sugerować, że nie ma miejsca w przypadku takiego drastycznego podejścia. Na pierwszą monetę "brzytwy huttonów", aby opisać tę langauge, naprawdę nie mam pojęcia ...

+2

Tak, nie oczekuję, że Hutton nazwałby go "Brzytwa Huttona", przynajmniej nie na początku: D – ntc2