2013-07-26 12 views
18

di Hutton Razor è un linguaggio di espressione banale con costanti e oltre:Dove viene definito per la prima volta "Hutton's Razor"?

data HR = Const Int 
     | HR :+: HR 

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

Appare in molti esempi di programmazione sul web, ad esempio, [1, 2, 3, 4]. Qualcuno sa dove è stato definito per primo, forse da Graham Hutton su un foglio?

+0

Questa domanda sembra essere off-topic perché si tratta di un riferimento documentato. – madth3

risposta

2

Hutton and Wright's 2004 "Compiling Exceptions Correctly" descrive un tale linguaggio. Non usa il termine "Rasoio di Hutton" (né ce ne aspetteremmo) ma introduce questo linguaggio minimale con una motivazione sufficiente a implicare che non ci sia in mente la tecnica anteriore per un approccio così drastico. Sul primo conio del "rasoio di hutton" per descrivere questa lingua, non ne ho idea ...

+2

Sì, non mi aspetto che Hutton lo chiami "Rasoio di Hutton", almeno non inizialmente: D – ntc2

Problemi correlati