真假2

来源:互联网 发布:2016最新网络歌曲大全 编辑:程序博客网 时间:2024/04/27 15:29

(mymachine   (

(defmacro  demoinside  (expr)

(print  expr)

)

(defmacro  mymachineinside  (exprs)

`(if  ,(eq  exprs  nil) 

      nil

     (progn

         (print (demoinside ,(car  exprs)) )

         (mymachineinside  ,(cdr  exprs) )

      )

)

)

 

(mymachineinside   (

(defmacro  demo  (expr)

(print  expr)

)

(defmacro  mymachine  (exprs)

`(if  ,(eq  exprs  nil) 

      nil

     (progn

          (demo ,(car  exprs)) 

         (mymachine  ,(cdr  exprs) )

      )

)

)

 

(setq  true  

   (lambda (u v)

         u

   )

)

 

(setq  false  

   (lambda (u v)

         v

   )

)

 

 

(setq  myif  

    (lambda  (condition )

            (lambda (then  else)

                   (condition  then  else) 

            )

    )

)

 

 

( (  myif   true)   'a    'b )

( (  myif   false)   'a    'b )

 

 

(setq  two  

      (lambda  (s  z)

          (s  (s  z) )

      )

)

 

( two   formal  nil)

 

(setq  three  

      (lambda  (s  z)

          (s (s  (s  z) ) )

      )

)

 

( two   formal  nil)

( three   formal  nil)

 

(setq  add  

      (lambda  (m  n   s  z)

            ( m   s   ( n  s  z) )

      )

)

 

 

(  add  two  three   formal  nil)

 

(setq  zero 

      (lambda  (s  z)

            z

      )

)

 

( (  myif   two)   'a  'b )

( (  myif   three)   'a  'b )

( (  myif   zero)   'a  'b )

 

 

 

(setq  wrapvalue

      (lambda ( step)

         (lambda (u  v)

            (step   u  v)

         )

      )

)

 

 

( (myif (wrapvalue ( two true  true) ) )  'a  'b )

( (myif (wrapvalue ( three true  true) ) )  'a  'b )

( (myif (wrapvalue ( zero true  false) ) )  'a  'b )

 

 

 

 

))

))

 

原创粉丝点击