13 Mar 2012 15:29Added TIMESTAMP.
mantoniotti@common-lisp.net [Tue, 13 Mar 2012 15:29:16]
13 Mar 2012 15:28Copyright updated.
mantoniotti@common-lisp.net [Tue, 13 Mar 2012 15:28:28]
13 Mar 2012 15:28Copyright updated.
mantoniotti@common-lisp.net [Tue, 13 Mar 2012 15:28:15]
16 Jun 2011 00:10Added "CL-UNIFICATION" as package nickname to match the .asd and .system specs.
mantoniotti@common-lisp.net [Thu, 16 Jun 2011 00:10:47]
02 Apr 2011 04:39Use *unify-string-case-sensitive-p* consistently.
rbrown@common-lisp.net [Sat, 02 Apr 2011 04:39:32]
Change the documentation.

02 Apr 2011 04:19match-block.lisp: Use &body in match-case and matchf-case so
rbrown@common-lisp.net [Sat, 02 Apr 2011 04:19:09]
code that uses them is correctly indented by editors.

02 Apr 2011 04:16Copyright updated.
mantoniotti@common-lisp.net [Sat, 02 Apr 2011 04:16:51]
02 Apr 2011 04:11Updated copyright info and a News.
mantoniotti@common-lisp.net [Sat, 02 Apr 2011 04:11:54]
02 Apr 2011 04:09ChangeLog updated.
mantoniotti@common-lisp.net [Sat, 02 Apr 2011 04:09:17]
02 Apr 2011 04:08Remove Thumbs.db and friends
mantoniotti@common-lisp.net [Sat, 02 Apr 2011 04:08:13]
02 Apr 2011 04:05Exported a few more symbols.
mantoniotti@common-lisp.net [Sat, 02 Apr 2011 04:05:30]
02 Apr 2011 04:05Minor changes (added COPYING information and other minutiae).
mantoniotti@common-lisp.net [Sat, 02 Apr 2011 04:05:18]
02 Apr 2011 04:01Changed some environment functions and improved the DUMP-* ones.
mantoniotti@common-lisp.net [Sat, 02 Apr 2011 04:01:24]
02 Apr 2011 03:51Acknowledgements updated.
mantoniotti@common-lisp.net [Sat, 02 Apr 2011 03:51:38]
02 Apr 2011 03:50Delete trailing whitespace. In lambda-list-parsing.lisp this fixes a bug
rbrown@common-lisp.net [Sat, 02 Apr 2011 03:50:19]
with ~@<newline> format directives.

02 Apr 2011 02:51unifier.lisp: Allow vectors to unify with sequence templates.
rbrown@common-lisp.net [Sat, 02 Apr 2011 02:51:32]
test/unification-tests.lisp: new test to verify the change

02 Apr 2011 02:49Add entry for cl-unification-test.asd.
rbrown@common-lisp.net [Sat, 02 Apr 2011 02:49:30]
02 Apr 2011 02:47Add cl-unification-test.asd
rbrown@common-lisp.net [Sat, 02 Apr 2011 02:47:50]
Make (asdf:test-system 'cl-unification) work.

02 Apr 2011 02:37Make sure that classes referenced in #T forms are defined
rbrown@common-lisp.net [Sat, 02 Apr 2011 02:37:58]
before the forms are read. This fixes compilation of
file unification-tests.lisp.

29 Mar 2011 23:22Copyright dates updated.
mantoniotti@common-lisp.net [Tue, 29 Mar 2011 23:22:33]
29 Mar 2011 23:20ChangeLog updated.
mantoniotti@common-lisp.net [Tue, 29 Mar 2011 23:20:53]
29 Mar 2011 22:59Added debugging functions DUMP-FRAME and DUMP-ENVIRONMENT.
mantoniotti@common-lisp.net [Tue, 29 Mar 2011 22:59:37]
15 Jun 2010 03:21Pull variable binding out of %match-expander
pix@kepibu.org [Tue, 15 Jun 2010 03:21:37]
I'd like to tell you this is part of a plan to simplify %match-expander, but in
all honesty, the only reason I'm doing it is because I found myself thinking
with-unification-variables would be a handy macro while working on a private
extension to cl-unification, and I didn't want to duplicate the code.

07 Feb 2010 08:42Marginally more straightforward?
pix@kepibu.org [Sun, 07 Feb 2010 08:42:39]
07 Feb 2010 07:40Declare ftype of find-variable-value and v? properly
pix@kepibu.org [Sun, 07 Feb 2010 07:40:23]
07 Feb 2010 07:33Fix export of lib-dependent symbols
pix@kepibu.org [Sun, 07 Feb 2010 07:33:38]
07 Feb 2010 07:30Specialization on the second arg of print-object is not allowed
pix@kepibu.org [Sun, 07 Feb 2010 07:30:06]
05 Feb 2010 09:30Whoops. Typo in test.
pix@kepibu.org [Fri, 05 Feb 2010 09:30:48]
05 Feb 2010 09:04Create a named-readtable if the named-readtables library is also loaded
pix@kepibu.org [Fri, 05 Feb 2010 09:04:00]
Because (in-readtable ...) is a beautiful thing.

05 Feb 2010 09:02Add (enable-template-reader), so it is easy to turn on the template reader
pix@kepibu.org [Fri, 05 Feb 2010 09:02:42]
Useful when there are conflicts on #T, such as with closure-html.

05 Feb 2010 08:58Export new MATCH* macros.
pix@kepibu.org [Fri, 05 Feb 2010 08:58:50]
05 Feb 2010 03:21Unified docstrings.
pix@kepibu.org [Fri, 05 Feb 2010 03:21:40]
04 Feb 2010 07:32Merge all MATCH* macros into a single, unified expansion function
pix@kepibu.org [Thu, 04 Feb 2010 07:32:18]
And, because it's now trivial, add MATCH-COND, MATCHF-COND, MATCH-ECASE, and
MATCHF-ECASE.

Still to do: Merge documentation of functions so there's less copy-pasta in the
documentation strings.

04 Feb 2010 07:31Duplicate nested match-case tests for matchf-case.
pix@kepibu.org [Thu, 04 Feb 2010 07:31:47]
04 Feb 2010 07:20Make "inner-error" and "outer-error" proper conditions.
pix@kepibu.org [Thu, 04 Feb 2010 07:20:04]
03 Feb 2010 09:56Make condition printable, for easier manually stepping through tests.
pix@kepibu.org [Wed, 03 Feb 2010 09:56:58]
03 Feb 2010 09:53These are no longer failures. Woo!
pix@kepibu.org [Wed, 03 Feb 2010 09:53:59]
25 Jan 2010 07:38Moar tests!
pix@kepibu.org [Mon, 25 Jan 2010 07:38:54]
25 Jan 2010 07:38Consider unexpected errors as test failures
pix@kepibu.org [Mon, 25 Jan 2010 07:38:27]
...why is this not default behavior?

25 Jan 2010 07:03(cond (a b) (c d) nil) isn't really valid
pix@kepibu.org [Mon, 25 Jan 2010 07:03:27]
23 Jan 2010 00:53How did .clbuild-skip-update even get /in/ the repo?
pix@kepibu.org [Sat, 23 Jan 2010 00:53:33]
23 Jan 2010 00:31Make tests file loadable
pix@kepibu.org [Sat, 23 Jan 2010 00:31:24]
23 Jan 2010 00:19DTRT when asdf-system-connections is available
pix@kepibu.org [Sat, 23 Jan 2010 00:19:32]
21 Jan 2010 01:56Rather than a new UNIFY** function, make UNIFY* work that way
pix@kepibu.org [Thu, 21 Jan 2010 01:56:47]
Let errors which are not UNIFICATION-FAILUREs find their way out of UNIFY*.

20 Jan 2010 08:28Can't IN-PACKAGE without a previous DEFPACKAGE.
pix@kepibu.org [Wed, 20 Jan 2010 08:28:50]
20 Jan 2010 08:27Handle :case-sensitive properly
pix@kepibu.org [Wed, 20 Jan 2010 08:27:09]

If the first clause doesn't match due to mismatched case, it would
roll down to the second clause, causing case-differing strings to
erroneously match. By checking for case again, we can avoid this.

Note, however, that this does not fix the similar but unrelated
inconsistent usage of *unify-string-case-sensitive-p* and
*unify-string-case-insensitive-p* (the former being used in the code
and the latter appearing in documentation). That bug will remain
until the canonical form is decided upon.

20 Jan 2010 08:09Fix typo (connot -> cannot)
pix@kepibu.org [Wed, 20 Jan 2010 08:09:59]
15 Jan 2010 08:55Redefine MATCH-CASE in terms of MATCHING
pix@kepibu.org [Fri, 15 Jan 2010 08:55:05]
This both greatly simplifies the MATCH-CASE macro as well as its expansion.

HOWEVER, this version is *NOT* 100% compatible with the previous version.
Specifically, UNIFICATION-FAILUREs signalled from within clause-forms will /not/
cause the next unification clause to be attempted, but will instead propogate
outward as the -case name suggests they should.

That is,
(ignore-errors
(match-case ("foo")
("foo" (error 'unification-failure ...))
(t :default)))
=> :default ;; before patch
=> nil, #<unification-failure> ;; after patch

15 Jan 2010 08:49Only use one variable to store the unification environment in MATCHING
pix@kepibu.org [Fri, 15 Jan 2010 08:49:26]
Because of the way MATCHING expands, and what UNIFY* returns, each
(setf #:env (unify* ...))
call will do one of two things: it will set #:env to NIL or it will set #:env to
an ENVIRONMENT structure.

If #:env is set to NIL--the same value it entered the (setf) with!--the COND
will continue on to the next clause.

If #:env is set to an ENVIRONMENT structure, none of the remaining (setf)
clauses will be evaluated.

Thus, because the variable will only ever be set to a non-nil value once, this
should be perfectly safe.

15 Jan 2010 07:59Make MATCHING agree with MATCH[F][-CASE] about the conditions of failure
pix@kepibu.org [Fri, 15 Jan 2010 07:59:02]
Rather than skipping to the next clause on any error, UNIFICATION-FAILUREs--and
/only/ UNIFICATION-FAILUREs--skip to the next clause.

Next ->