(defun setq->cond ()
(setq *acadobject*
(cond
(*acadobject*)
((vlax-get-acad-object)))))
(defun cond->setq ()
(cond
(*acadobject*)
((setq *acadobject* (vlax-get-acad-object)))))
(defun setq->if ()
(setq *acadobject*
(if *acadobject*
*acadobject*
(vlax-get-acad-object))))
(setq *acadobject* nil)
(bench '(setq->cond) '() 10000000)
(setq *acadobject* nil)
(bench '(cond->setq) '() 10000000)
(setq *acadobject* nil)
(bench '(setq->if) '() 10000000)
Results:
SETQ->COND
Elapsed: 31918
Average: 0.0032
COND->SETQ
Elapsed: 33150
Average: 0.0033
Command: 'VLIDE
SETQ->IF
Elapsed: 31029
Average: 0.0031
Edit: Not quite 10% faster (as advertised), rather only +/-1% on average over 10000000 iterations. LoL
Edit: CORRECTION, my fat fingers typed incorrectly... (* 100.0 (/ (- 33150 31029) 33150.0)) is +/-6%. My bad.