[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Quickie question on CLIM application command semantics and approach
I have two very simple questions about what would the best way to implement
application commands on my CLOS objects.
1) If I have two or more clos class objects that I want to execute the same
application command on. Which is the better approach?
Lets say my classes are called A and B.
(define-my-application-command (do-something :name t) ((object (or A B))
...)
or can I do it this way
(define-my-application-command (do-something :name t) ((object 'A))
...)
(define-my-application-command (do-something :name t) ((object 'B))
...)
Is it more efficient, especially if I want the same command "do-something"
to the object slightly differently based upon its type.
2) Is there a way to eliminate needing a colon on the keyword args in the
command. I want to emulate &optional arg another-arg and so on capability within the application command definition.
If I do
(define-my-application-command (do-something :name t)
((object A) &key one-way another-way) ...)
and invoke the command in my interactor pane it shows up as:
do-something OBJECT-A-PRINT :one-way as I type it in. How can I eliminate
those colons. Or am I stuck with including my own calls to ACCEPT within
the command definition form to emulate optional args?