lisp 的邏輯計算採用短路策略

babyyellow發表於2012-12-25

common-lisp  的邏輯計算採用的是短路策略

or 是採用短路策略

CL-USER> (defparameter *is-it-even* nil)
*IS-IT-EVEN*
CL-USER> *is-it-even*
NIL
CL-USER> (or (oddp 4 ) (setf *is-it-even* t))
T
CL-USER> *is-it-even*
T
CL-USER>


and  同樣也是採用短路策略

CL-USER> *is-it-even*
T
CL-USER> (and (oddp 3) (setf *is-it-even* nil))
NIL
CL-USER> *is-it-even*
NIL
CL-USER> (setf *is-it-even* t)
T
CL-USER> (and (oddp 4) (setf *is-it-even* nil))
NIL
CL-USER> *is-it-even*
T
CL-USER>

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/133735/viewspace-751616/,如需轉載,請註明出處,否則將追究法律責任。

相關文章