|
|
|
|
|
by utx00
6206 days ago
|
|
in cl, you can use defsetf to almost do the same. as a matter of fact, taking a cue from arc, you can write a macro like: (defmacro deftable (name)
`(progn
(defparameter ,name (make-hash-table))
(defun ,name (k)
(gethash k ,name))
(defsetf ,name (k) (v)
`(setf (gethash ,k ,',name) ,v))))
now you can do:
(deftable client), which creates the hashtable, and then(client 'phone) will retrieve the value, (setf (client 'phone) '4444444) will set the value. |
|