diary at Telent Netowrks

* (let ((report '(:os :alpha :tree t)) (term '(:tree :sbcl))) (every (lambda (x) (let ((tx (getf term x t)) (rx (getf report x t))) (or (eq tx rx) (eq tx t) (eq rx t)))) '(:os :tree :arch)))#

Sat, 22 Jun 2002 03:39:10 +0000

It's not exactly what you'd call a comprehensive test, but it seems to work. Omitted components in either the criterion we're searching on (term) or the report we're looking at (report) default to "any". For each attribute that we're looking at '(:os :tree :arch), a search for "any" yields results for "any" or for any other value, and a search for a specific value also matches reports that apply to "any". All clear?

There is admittedly no way in this scheme at present to say "all reports except the ones that apply to :os :linux", for example. I think I had some reason for this omission along the lines of "why on earth would you want to know that"; it remains to be seen whether this is convincing.