Je peux définir des chiffres de l'église assez facile système utilisant:Comment puis-je rendre les chiffres d'église plus lisibles en lisp?
> (define f (lambda (x) x))
> (f f) ;0
#<procedure:f>
> (f (f f)) ;1
#<procedure:f>
Cependant, cela ne le rend pas très facile de reconnaître que (f f)
est 0 et (f (ff)) est 1. Est-il possible que Je peux rendre ces chiffres plus lisibles? Ce qui serait idéal est ceci:
> (f f)
0
> (f (f f))
1
L'exemple est dans le schéma, mais je prendrai une réponse dans n'importe quel lisp.
Ce ne sont pas des chiffres d'église. La façon dont vous l'avez défini, '(f f)' est 'f', donc' (f (f f)) 'est' (f f) 'est' f'. – sepp2k