next up previous contents index
Next: Les booléens Up: Common Lisp et Scheme Previous: Fonctionnalités en Scheme inexistantes   Contents   Index

Définitions locales

Certaines constructions similaires en Scheme et en Common Lisp ont une sémantique différente. C'est le cas en particulier des définitions locales. La construction suivante en Scheme :

(defun (f)
  (defun (g)
    ...)
  ...)
est équivalente à l'utilisation de letrec pour définir g, alors qu'en Common Lisp ce n'est pas le cas. La construction suivante de Common Lisp :

(let ((x 0))
  (defun f ()
    ...))

n'est donc pas possible en Scheme. En Scheme, la construction pour obtenir le même effet serait :

(define f)
(let ((x 0))
  (set! f (lambda () ...)))



Robert STRANDH
2001-09-28