Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (declaim (optimize (compilation-speed 0)))
- (defun my5 ()
- (declare (optimize (speed 3) (space 0) (safety 0) (debug 0)))
- (loop for num from 1
- until (loop for divisor from 20 downto 1
- always (zerop (mod (the fixnum num)
- (the fixnum divisor))))
- finally (return num)))
- Why do I get:
- note: doing signed word to integer coercion (cost 20) to NUM
- ; in: DEFUN MY5
- ; (LOOP FOR NUM FROM (THE WORD 1)
- ; UNTIL (LOOP FOR DIVISOR FROM 20 DOWNTO 1
- ; ALWAYS (ZEROP (MOD (THE FIXNUM NUM) (THE FIXNUM DIVISOR))))
- ; FINALLY (RETURN NUM))
- ; --> BLOCK LET SB-LOOP::LOOP-BODY TAGBODY SB-LOOP::LOOP-REALLY-DESETQ
- ; ==>
- ; (SETQ NUM (1+ NUM))
- ;
- ; note: w
- ;
- ; compilation unit finished
- ; printed 1 note
Add Comment
Please, Sign In to add comment