Subject: Re: :test argument question
From: rpw3@rpw3.org (Rob Warnock)
Date: Thu, 11 Sep 2003 06:13:08 -0500
Newsgroups: comp.lang.lisp
Message-ID: <9-mcnSOAFJNZxf2iXTWc-w@speakeasy.net>
Kimmo T Takkunen <ktakkune@cc.helsinki.fi> wrote:
+---------------
| Is the order of parameters to :test function specified in the standard?
+---------------

Yes. See CLHS "17.2.1 Satisfying a Two-Argument Test":

	A :TEST argument, if supplied to F, is a designator
	for a function of two arguments, O and Zi.

[where "Zi" is the value of the :KEY function, if any, or else is
an element "Ei" of the argument sequence.]

That is, with (FIND FOO <seq> :TEST #'BAR), FOO will always be the
first argument given to BAR.

+---------------
| Can I use non-commutative test functions like '< etc.
+---------------

Yes, you can, but be careful to ensure that the result would actually
be what you want it to be. (It might not always be obvious, e.g., with
SET-DIFFERENCE or INTERSECTION, etc.).


-Rob

-----
Rob Warnock, PP-ASEL-IA		<rpw3@rpw3.org>
627 26th Avenue			<URL:http://rpw3.org/>
San Mateo, CA 94403		(650)572-2607