I had a couple stressful but then triumphal mastodon toots.

An ultralisp developer (quicklisp  plus ultra) was wondering
how to optionally  disable (declare (inline foo)) not/inling
foo. 

The SBCL docs say to check  the old cmucl docs, they are 95%
right. 

I had replied  quickly that I think optimize  space  is used
for this in sbcl.   Then I was worrying  about  needing   to
delete or edit that post if I had got i twrong. 

Worry  spurred  me on to actually  check.  Indeed,  the sbcl
extensions package sb-ext has in it an undocumented  feature
from cmucl's extensions  that lets you turn inlining off and
on using  (space 0) and (space  1), and is recommended  over
the (declare (inline foo)) idiom (in cmucl). 

It's good to use optimize  space like this, because optimize
space  is  not  generally  useful  (inlining  for  speed  is
controlled already and better by optimize speed). 

;;;  Extension allowing explicitly  turning inlining  on and
;;;  off 
(declaim (sb-ext:maybe-inline fmt-string))

;;; Just a user-defined  function that compiles  to a lot of
;;; ASM 
(defun fmt-string (a) (format nil "~a" a))

;;; Define a function using fmt-string,  inlining turned off
;;;;   toggle   inlining   off  just  for  this   definition
(locally       (declare      (optimize      (space      0)))
 (defun thing-1 (x) (fmt-string x)))

;;;;    toggle   inlining   on  just  for  this   definition
(locally      (declare      (optimize      (space       1)))
 (defun thing-2 (x) (fmt-string x)))

Voila. thing-1 is INLINEd and thing-2 is NOTINLINEd. You can
verify  this using (disassemble  'thing-1)  and (disassemble
'thing-2). 

If you try it with the same local  declares,  (space  0) and
(space   1)  result   in the same assembly.    But  (declaim
(sb-ext:maybe-inline  fmt-string))  turned on (space 0)  and
(space 1) controls regarding our #'fmt-string function. 

I    was    relieved     and    happy    the    undocumented
carried-over-from-cmucl  feature in sbcl extensions   worked
more or less like I had already said in the first place. 

Mastodon thread:

fosstodon.org/@svetlyak40wt/109777982411031270

Publius shared  an old BYTE cover of astronauts  discovering
lisp secret alien technology on the moon. 

PS:
I will NCONC '(ultralisp) to my list of topics for tomorrow.