#!/usr/local/bin/sbcl --script (defun spawn(x) #'(lambda (request) (cond ((= 1 request) (setq x (+ x 1))) ((= 2 request) (setq x (- x 1))) (t x)))) (setq spawn1 (spawn 10) spawn2 (spawn 0)) (print (funcall spawn1 1)) (print (funcall spawn1 1)) (print (funcall spawn2 2))