From 7da3a959c9b53d5dac6d5c993cb779f4dd2cdd2c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Georges=20Dup=C3=A9ron?= Date: Sun, 3 Oct 2010 12:49:36 +0200 Subject: [PATCH] =?UTF-8?q?Corrections=20cosm=C3=A9tiques=20et=20indentati?= =?UTF-8?q?on=20(avec=20des=20espaces,=20si=20vous=20voyez=20un=20tab,=20f?= =?UTF-8?q?aut=20le=20buter=20!).?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- case-analysis.lisp | 54 +++++++++++++++++++++++----------------------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/case-analysis.lisp b/case-analysis.lisp index fcc3e23..c31c685 100644 --- a/case-analysis.lisp +++ b/case-analysis.lisp @@ -1,31 +1,31 @@ (defun case-analysis (expr env) (if (atom expr) (if (constantp expr) - ;cas literal - (let ((cell ( expr env))) - (if cell - ; cas d'une variable - ( "~S n'est pas une variable" expr)))) + ;; cas literal + (let ((cell ( expr env))) + (if cell + ;; cas d'une variable + ( "~S n'est pas une variable" expr)))) (cond ((and (listp (car expr)) (eq (caar expr) 'lambda)) - ;cas lambda fonction => recursivite - ) - ((not (symbolp (car expr))) - ( "~S n'est pas une fonction" (car expr))) - ((not (fboundp (car expr))) - ( "le symbole ~S n'a pas de definition fonctionnelle" (car expr))) - ((special-form-p (car expr)) - (case (car expr) - (quote `(:const . ,(cadr expr))) ;cas quote - (if `(:if ,(case-analysis (cadr expr) env) - ,(case-analysis (caddr expr) env) - . ,(case-analysis (cadddr expr) env))) - (defun ;traitement du cas defun pas de recusivite ou sur le corps du defun - (case-analysis (fourth expr) ( (third expr)))) - (T ( "~S NYI" (car expr))))) - ((macro-function (car expr)) - ;cas des macros - ) - (;cas des fonctions locales -> env fonctionnel - ) - (T ;cas des fonctions globales recursion - (map-case-analysis (cdr expr) env))))) \ No newline at end of file + ;; cas lambda fonction => recursivite + ) + ((not (symbolp (car expr))) + ( "~S n'est pas une fonction" (car expr))) + ((not (fboundp (car expr))) + ( "le symbole ~S n'a pas de definition fonctionnelle" (car expr))) + ((special-form-p (car expr)) + (case (car expr) + (quote `(:const . ,(cadr expr))) ;cas quote + (if `(:if ,(case-analysis (cadr expr) env) + ,(case-analysis (caddr expr) env) + . ,(case-analysis (cadddr expr) env))) + (defun ;; traitement du cas defun pas de recusivite ou sur le corps du defun + (case-analysis (fourth expr) ( (third expr)))) + (T ( "~S NYI" (car expr))))) + ((macro-function (car expr)) + ;; cas des macros + ) + (;; cas des fonctions locales -> env fonctionnel + ) + (T ;; cas des fonctions globales recursion + (map-case-analysis (cdr expr) env))))) \ No newline at end of file