set!
既に束縛されている名前を、再び違うオブジェクトに束縛する手続き。
多くの手続き型言語でいう「代入」をやりたいときに使う。
gosh> (set! lambda 3.141592) 3.141592 gosh> lambda 3.141592
みたいな。
これやっちゃうと大変なことになるけどね!
で、指定したものを荷物から削除するdelete-item!はdelete-1(id:yagiey:20090307:1236410685)を使って、
(define delete-item! (lambda (item) (set! *inventory* (delete-1 item *inventory*))))
ってできるよねー、っと。