preparation for modularization, correction of copyright date coverage.
[CommonLispStat.git] / external / clem / ChangeLog
blobf73fabaf736a4f22104026bad2406e9ad586fb9a
1 2007-02-21  Cyrus Harmon  <cyrus@bobobeach.com>
3         * benchmark/.cvsignore, benchmark/bench-add.lisp, benchmark/bench-hprod.lisp, benchmark/bench-mult.lisp, benchmark/bench-scale.lisp, benchmark/bench-subtr.lisp, benchmark/benchmarks.lisp, clem-benchmark.asd, make-dist.sh, src/defmatrix-types.lisp, src/scale.lisp, src/transform.lisp, version.lisp-expr:
4         clem 0.3.13
5          * splitting benchmarks up into multiple files and adding more
6            benchmarks
8 2007-02-20  Cyrus Harmon  <cyrus@bobobeach.com>
10         * benchmark/benchmarks.lisp, benchmark/defpackage.lisp, clem-benchmark.asd, clem.asd, src/add.lisp, src/defpackage.lisp, src/matrix-classes.lisp, src/matrixops.lisp, src/scale.lisp, src/subtr.lisp, src/typed-ops/defmatrix-mult.lisp, src/typed-ops/defmatrix-scale.lisp, version.lisp-expr:
11         clem 0.3.12
12          * moved benchmarks stuff into its own package/directory/asdf
13          * moved scale stuff from defmatrix-scale.lisp to scale.lisp and
14            reworked to simplify. added mat-scale-2 that takes both input and
15            destination matrices. reworked mat-scale to take :in-place and to
16            figure out types and call mat-scale-2 appropriately.
17          * fixed a type bug in mat-mult and added more matrix mult types
19 2007-02-17  Cyrus Harmon  <cyrus@bobobeach.com>
21         * test/bench-matrix.cl, test/benchmarks.lisp, version.lisp-expr:
22         clem 0.3.11
23          * added more benchmarking stuff (beginning of a new approach)
25 2007-01-24  Cyrus Harmon  <cyrus@bobobeach.com>
27         * src/typed-ops/defmatrix-mult-block.lisp, src/typed-ops/defmatrix-mult-debug.cl, src/typed-ops/defmatrix-mult.lisp, src/typed-ops/defmatrix-transform.lisp, version.lisp-expr:
28         clem 0.3.10
29          * fixing more array declarations
31 2007-01-23  Cyrus Harmon  <cyrus@bobobeach.com>
33         * src/matrixops.lisp, src/mloop.lisp, src/move.lisp, src/mref.lisp, src/statistics.lisp, src/sum.lisp, src/typed-ops/defmatrix-convolve.lisp, version.lisp-expr:
34         clem 0.3.9
35          * in laplacian-2, scale the result of discrete-convolve in-place
36          * make some array declarations be * instead of (* *)
37          * whitespace in move.lisp
38          * change semantics of matrix-move-range-2d to be more lispy (that is (0 5)
39            includes 0, but not 5
40          * change matrix-move to match
41          * indentation
43 2007-01-18  Cyrus Harmon  <cyrus@bobobeach.com>
45         * src/move.lisp, test/test-clem2.cl, version.lisp-expr: clem 0.3.8
46          * fix bug in matrix-move
47          * add some in-place tests
49 2007-01-13  Cyrus Harmon  <cyrus@bobobeach.com>
51         * src/add.lisp, src/subtr.lisp, version.lisp-expr: clem 0.3.7
52          * fix an error message in mat-add-range
53          * add subtr.lisp
55 2007-01-09  Cyrus Harmon  <cyrus@bobobeach.com>
57         * src/defpackage.lisp, src/matrix.lisp, src/matrixops.lisp, src/transform.lisp, version.lisp-expr:
58         clem 0.3.6
59          * removed some oudated exported symbols
60          * reworked mat-subtr
61          * fixed gradmag and graddir
62          * fixed affine-transformation to work with n-d matrices
63          * fixed mat-subtr of affine-transformations
65 2007-01-08  Cyrus Harmon  <cyrus@bobobeach.com>
67         * src/logical-operations.lisp, src/macros.lisp, src/matrix.lisp, src/mref.lisp, src/typed-ops/defmatrix-abs.lisp, src/typed-ops/defmatrix-add.lisp, src/typed-ops/defmatrix-binary-op.lisp, src/typed-ops/defmatrix-log.lisp, src/typed-ops/defmatrix-minmax.lisp, src/typed-ops/defmatrix-move.lisp, src/typed-ops/defmatrix-mref-debug.cl, src/typed-ops/defmatrix-mref.lisp, src/typed-ops/defmatrix-range-ops.lisp, src/typed-ops/defmatrix-square.lisp, src/typed-ops/defmatrix-subtr.lisp, src/typed-ops/defmatrix-sum.lisp, src/typed-ops/defmatrix-unary-op.lisp, test/test-add.lisp, test/test-normalize.lisp, test/test-not.lisp, test/test-sum.lisp, test/test-typed-mref.lisp, clem.asd, doc/clem.sexp, src/add.lisp, src/defmatrix.lisp, src/extrema.lisp, version.lisp-expr:
68         clem 0.3.5
69          * continuing the reorganization
70          * minor documentation update
71          * fixing add.lisp
72          * reorganized with-typed-matrix-vals and friends
73          * min and max now work with n-d matrices
74          * added license to logical-operations.lisp
75          * clean up logical-operations.lisp
76          * add (:allow-in-place t) keyword arg to def-binary-op
77          * clen up mref
78          * remove moved files
79          * add some tests
81 2007-01-07  Cyrus Harmon  <cyrus@bobobeach.com>
83         * clem.asd, src/abs.lisp, src/add.lisp, src/arithmetic.lisp, src/defmatrix-types.lisp, src/defpackage.lisp, src/early-matrix.lisp, src/extrema.lisp, src/matrix.lisp, src/move.lisp, src/mref.lisp, src/print.lisp, src/statistics.lisp, src/sum.lisp, src/transform.lisp, src/typed-matrix.lisp, src/vector.lisp, version.lisp-expr:
84         clem 0.3.4
85          * continuing the reorganization
86          * added license information to some files
87          * working on making functions work with n-dimensional matrices
89         * src/abs.lisp, src/add.lisp, src/arithmetic.lisp, src/early-matrix.lisp, src/exponential.lisp, src/extrema.lisp, src/log.lisp, src/logical-operations.lisp, src/macros.lisp, src/matrix.lisp, src/move.lisp, src/mref.lisp, src/normalize.lisp, src/statistics.lisp, src/sum.lisp, src/typed-ops/defmatrix-binary-op.lisp, src/typed-ops/defmatrix-minmax.lisp, src/typed-ops/defmatrix-square.lisp, src/typed-ops/defmatrix-sum.lisp, src/typed-ops/defmatrix-unary-op.lisp, test/test-clem.cl, version.lisp-expr, clem.asd:
90         clem 0.3.3
91          * continuing the reorganization
92          * rewrite with-typed-mref to work properly
94 2007-01-06  Cyrus Harmon  <cyrus@bobobeach.com>
96         * doc/clem.sexp, src/defmatrix.lisp, src/early-matrix.lisp, src/matrix.lisp, src/typed-ops/defmatrix-move.lisp, src/typed-ops/defmatrix-mref.lisp, test/bench-matrix.cl, test/test-clem.cl, version.lisp-expr:
97         clem 0.3.2
98          * deleted with-typed mref and commented out mref methods
99          * spacing changes
100          * add mref, row-major-mref, matrix-total-size, matrix-dimensions and
101            with-typed-mref macros
102          * matrix-move-range -> matrix-move-range-2d
103          * reworked dim, cols and rows to work n-d matrices
104          * removed mat-add-inline and mat-add!-inline
105          * added fallback untyped matrix-move for matrix and integer-matrix
106          * fixed some test stuff
108 2007-01-03  Cyrus Harmon  <cyrus@bobobeach.com>
110         * src/early-matrix.lisp, src/matrix.lisp, version.lisp-expr: clem 0.3.1
111          * adding :dimensions arg
112          * making rows and columns reader functions work
114 2006-12-27  Cyrus Harmon  <cyrus@bobobeach.com>
116         * STYLE, bootstrap.cl, bootstrap.lisp, clem.asd, src/defmatrix.lisp, src/early-matrix.lisp, src/matrix.lisp, src/n-d-matrix.lisp, src/typed-ops/defmatrix-mref.lisp, version.lisp-expr:
117         clem 0.3.0
118          * getting ready for the big switch to n-dimensional matrices
120 2006-12-16  Cyrus Harmon  <cyrus@bobobeach.com>
122         * clem.asd, src/defmatrix-types-debug.cl, src/typed-ops/defmatrix-abs.cl, src/typed-ops/defmatrix-abs.lisp, src/typed-ops/defmatrix-add.cl, src/typed-ops/defmatrix-add.lisp, src/typed-ops/defmatrix-binary-op.cl, src/typed-ops/defmatrix-binary-op.lisp, src/typed-ops/defmatrix-convolve.cl, src/typed-ops/defmatrix-convolve.lisp, src/typed-ops/defmatrix-equal.cl, src/typed-ops/defmatrix-equal.lisp, src/typed-ops/defmatrix-hprod.cl, src/typed-ops/defmatrix-hprod.lisp, src/typed-ops/defmatrix-log.cl, src/typed-ops/defmatrix-log.lisp, src/typed-ops/defmatrix-minmax.cl, src/typed-ops/defmatrix-minmax.lisp, src/typed-ops/defmatrix-move.cl, src/typed-ops/defmatrix-move.lisp, src/typed-ops/defmatrix-mref.cl, src/typed-ops/defmatrix-mref.lisp, src/typed-ops/defmatrix-mult-block.cl, src/typed-ops/defmatrix-mult-block.lisp, src/typed-ops/defmatrix-mult.cl, src/typed-ops/defmatrix-mult.lisp, src/typed-ops/defmatrix-range-ops.cl, src/typed-ops/defmatrix-range-ops.lisp, src/typed-ops/defmatrix-scale.cl, src/typed-ops/defmatrix-scale.lisp, src/typed-ops/defmatrix-square.cl, src/typed-ops/defmatrix-square.lisp, src/typed-ops/defmatrix-subset-matrix.cl, src/typed-ops/defmatrix-subset-matrix.lisp, src/typed-ops/defmatrix-subtr.cl, src/typed-ops/defmatrix-subtr.lisp, src/typed-ops/defmatrix-sum.cl, src/typed-ops/defmatrix-sum.lisp, src/typed-ops/defmatrix-transform.cl, src/typed-ops/defmatrix-transform.lisp, src/typed-ops/defmatrix-unary-op.cl, src/typed-ops/defmatrix-unary-op.lisp, version.lisp-expr:
123         clem 0.2.11
124          * second stage of the big file rename/consolidation
125            this time for the typed-ops
126            + .cl -> .lisp files
127            + just use standard :cl-source-file asdf type
129         * src/print.cl, src/print.lisp, src/row-vector.cl, src/scalar-types.cl, src/scalar.cl, src/scalar.lisp, src/transform.cl, src/transform.lisp, src/typed-matrix-utils.cl, src/typed-matrix-utils.lisp, src/typed-matrix.cl, src/typed-matrix.lisp, src/vector.lisp, Makefile, NEWS, clem.asd, src/base-vector.cl, src/col-vector.cl, src/defmatrix-types.cl, src/defmatrix-types.lisp, src/defmatrix.cl, src/defmatrix.lisp, src/defpackage.cl, src/defpackage.lisp, src/early-matrix.cl, src/early-matrix.lisp, src/generics.cl, src/interpolation.cl, src/interpolation.lisp, src/matrix-classes.cl, src/matrix-classes.lisp, src/matrix.cl, src/matrix.lisp, src/matrixops.cl, src/matrixops.lisp, src/matrixutils.cl, src/metaclasses.cl, src/metaclasses.lisp, src/mloop.cl, src/mloop.lisp, version.lisp-expr:
130         clem 0.2.10
131          * first stage of the big file rename/consolidation
132            + .cl -> .lisp files
133            + just use standard :cl-source-file asdf type
134            + consolidate vector stuff in one file
135          * remove cruft
137         * clem.asd, src/early-matrix.cl, src/matrix.cl, src/print.cl, version.lisp-expr:
138         clem 0.2.9
139          * add print file, start to simplify asdf dependencies
140          * fix matrix-argument-error so that it now works with a :cause initarg
141          * break out generics into a protocol section at the beginning of
142            matrix.cl
143          * add some documentation to the protocol defgenerics
144          * remove list-if
145          * remove dim-1
146          * rework m* logic so that it works more as one would expect, and
147            documented that behavior!
149 2006-12-14  Cyrus Harmon  <cyrus@bobobeach.com>
151         * ChangeLog, src/matrix-classes.cl, version.lisp-expr: clem 0.2.8
152          * made real-matrix and complex-matrix be subtypes of number-matrix instead of t-matrix
154 2006-12-11  Cyrus Harmon  <ch-lisp@bobobeach.com>
156         * ChangeLog, version.lisp-expr: clem 0.2.7
157          * forgot to update ChangeLog
159 2006-12-11  Cyrus Harmon  <ch-lisp@bobobeach.com>
161         * bootstrap.cl, src/defmatrix.cl, src/defpackage.cl, src/transform.cl, version.lisp-expr:
162         clem 0.2.6
163          * spacing fixes
164          * fix maxvalue in defmatrix.cl
165          * add clem-user package
166          * types for affine-transformation-7-parameters need to be unquoted
168 2006-09-19  Cyrus Harmon  <ch-lisp@bobobeach.com>
170         * src/typed-ops/defmatrix-binary-op.cl, src/typed-ops/defmatrix-scale.cl, doc/clem-performance.sexp, src/matrixops.cl, version.lisp-expr:
171         clem 0.2.5
172          * added some comments about boxed and unboxed representation of lisp
173            data objects
174          * Added a question about extensible arrays
175          * set-val - set-val-fit in dilate (or was it erode?)
176          * added mbitnor
177          * added some more type inference in defmatrix-scale
179 2006-08-30  Cyrus Harmon  <ch-lisp@bobobeach.com>
181         * src/defmatrix.cl, src/matrix.cl, src/matrixops.cl, src/typed-ops/defmatrix-move.cl, src/typed-ops/defmatrix-square.cl, version.lisp-expr:
182         clem 0.2.4
183           * added with-typed-map-range macro
184           * added matrix->list
185           * added destination optional argument for matrix-l2-distance
186            (performance optimization)
187          * trying to make matrix-move and mat-square faster
189 2006-08-27  Cyrus Harmon  <ch-lisp@bobobeach.com>
191         * clem.asd, src/defpackage.cl, src/matrixops.cl, src/transform.cl, src/typed-ops/defmatrix-equal.cl, src/typed-ops/defmatrix-transform.cl, version.lisp-expr:
192         clem 0.2.3
193         * add defmatrix-equal file with mat-equal operation
194         * matrix-medians takes a list of matrices, not &rest matrices
195         * added matrix-l2-distance
196         * added docstring about interpolation types
198 2006-08-09  Cyrus Harmon  <ch-lisp@bobobeach.com>
200         * doc/clem.sexp, make-dist.sh, src/defpackage.cl, src/matrixops.cl, test/scratch.cl, version.lisp-expr:
201         clem 0.2.2
202           * use asdf-package:package-system instead of ch-util:make-dist in make-dist.sh
203           * fix references
204           * add and export matrix-means and matrix-medians
205           * add enable-bracket-reader-macro to scratch file
207 2006-07-29  Cyrus Harmon  <ch-lisp@bobobeach.com>
209         * src/metaclasses.cl, version.lisp-expr: clem 0.1.10.7-20060729
210           * added finalize-inheritance call in initialize-instance
211             and reinitialize-instance methods for standard-matrix-class
212             instances.
214         * src/matrixops.cl, version.lisp-expr: clem 0.1.10.6-20060729
215           * added standard-deviation and matrix-means
217 2006-07-17  Cyrus Harmon  <ch-lisp@bobobeach.com>
219         * src/typed-ops/defmatrix-add.cl, version.lisp-expr:
220         clem 0.1.10.5-20060716
221           * added an add function for ub32 and ub8
223 2006-07-06  Cyrus Harmon  <ch-lisp@bobobeach.com>
225         * doc/clem.sexp: lowercase tags
227         * src/matrix.cl, version.lisp-expr: clem 0.1.10.4-20060705
228           * added mat-scalar-op methods that take numbers
229           * added mat-subtr ops where one arg is a number, so m- works with
230             numbers now
232 2006-06-29  Cyrus Harmon  <ch-lisp@bobobeach.com>
234         * src/defpackage.cl, src/transform.cl, version.lisp-expr:
235         CLEM 0.1.10.3-20060629
236            * added affine-transformation-7-parameters and associated functions
238 2006-06-26  Cyrus Harmon  <ch-lisp@bobobeach.com>
240         * NEWS, doc/clem-performance.sexp, doc/clem.gmarkup, src/defmatrix.cl, src/matrix.cl, src/matrixops.cl, src/transform.cl, src/typed-ops/defmatrix-scale.cl, src/typed-ops/defmatrix-subtr.cl, src/typed-ops/defmatrix-transform.cl, test/bench-matrix-2.cl, test/bench-matrix.cl, version.lisp-expr:
241         * smarkup changes
242         * normalize now takes a copy parameter
243         * added graddir for computing the gradient direction
244         * added laplacian-2 with a different matrix
245         * removed the 7-parameter :initargs from affine-transformation
246         * stopped trying to keep a 7-parameter representation in six with the matrix
247           representation of an affine transformation
248         * affine transforamtion scaling is no longer exponential
249         * added mat-mult/scale/add/subtr/hprod methods for affine-transfromations
250           (but perhaps these can go away now?)
251         * added mat-scale-fit and friends
252         * added some more types for defmatrix-subtr
253         * comment indentation
254         * benchmarks
256 2006-06-09  Cyrus Harmon  <ch-lisp@bobobeach.com>
258         * clem-doc.asd: * gigamonkeys markup -> smarkup
260         * clem.asd: * Added ChangeLog to the asdf
262         * NEWS: * update NEWS
264         * ChangeLog: * update ChangeLog
266         * doc/clem.sexp: * now works with smarkup instead of gigamonkeys markup
268         * src/matrixops.cl: * comment out dilate-orig and erode-orig
269         * added defgenerics for threshold binary-threshold and
270           complement-matrix
272 2006-06-04  Cyrus Harmon  <ch-lisp@bobobeach.com>
274         * TODO, clem-doc.asd, doc/clem-performance.sexp, doc/clem.sexp, doc/simple.css, make-tinaa-docs.lisp, src/defpackage.cl, src/early-matrix.cl, src/matrix.cl, version.lisp-expr:
275         * update TODO items
276         * replace clem.gmarkup with clem.sexp
277         * increase tinaa::*short-documentation-length*
278         * add initial performance documentation
279         * add css file
280         * aad some more exported symbols
281         * add docstring to random-matrix
283         * src/matrix.cl:
284         * throw an error on attempt to multiply incongruent matrices
286         * src/typed-ops/defmatrix-mult.cl:
287         * Throw an error on attempt to multiply incongruent matrices
289 2006-05-10  Cyrus Harmon  <ch-lisp@bobobeach.com>
291         * clem.asd, src/defmatrix-types.cl, src/defmatrix.cl, src/defpackage.cl, src/early-matrix.cl, src/matrix-classes.cl, src/matrix.cl, src/matrixops.cl, src/transform.cl, src/typed-ops/defmatrix-mref.cl, test/bench-matrix-2.cl, test/bench-matrix.cl, test/mref-tests.cl, test/test-gradmag.cl, version.lisp-expr:
292         * moved some early matrix class definition stuff into early-matrix.
293         * moved the rest of the matrix class definitions into matrix-classes.
294         * removed the eval-when stuff from defmatrix-types.
295         * exported some more symbols (mref, copy-to-ub16-matrx,
296           copy-to-ub32-matrix, sb8-scalar, ub8-scalar, mlogior, mlogand,
297           mlogxor.
298         * added dim1 to get the size of one array dimension.
299         * scale x and y derivative matrices.
300         * added laplacian, binary-threshold and complement-matrix functions.
301         * added updated-affine-transformation-slots and
302           set-affine-transformation-matrix, to allow for updating to of the
303           matrix parameters directly, adjusting the slots accordingly.
304         * removed mref2
305         * added some more benchmarks and tests
307 2006-05-03  Cyrus Harmon  <ch-lisp@bobobeach.com>
309         * test/bench-matrix.cl, src/typed-ops/defmatrix-mult.cl, src/typed-ops/defmatrix-mref.cl, src/typed-ops/defmatrix-convolve.cl, version.lisp-expr:
310         * added some fixnum declarations in convolve and mult that muffle some
311           warnings
312         * getting ready to replace the arefs with mref sbcl compiler hackery
314         * src/typed-ops/defmatrix-mref.cl:
315         checking in my hinky sbcl deftransform stuff before i go and mess it up
317 2006-04-18  Cyrus Harmon  <ch-lisp@bobobeach.com>
319         * clem.asd, src/matrix.cl, src/mloop.cl, src/transform.cl, src/typed-matrix-utils.cl, src/typed-ops/defmatrix-add.cl, src/typed-ops/defmatrix-transform.cl, version.lisp-expr:
320         * added mloop file for mloop macro for looping over matrices
321         * fixed some depends
322         * removed map-matrix
323         * removed some spurious clem: package designators
324         * added new copy-to-{ub16,ub32,sb8,sb16,sb32}-matrix
325           methods
326         * use mloop in defmatrix-add to simplify the logic a bit
327         * added bit-matrix bit-matrix add
328         * add a small epsilon before calling floor in %transform-matrix
330 2006-04-15  Cyrus Harmon  <ch-lisp@bobobeach.com>
332         * version.lisp-expr, clem.asd, src/generics.cl, src/typed-ops/defmatrix-add.cl, src/typed-ops/defmatrix-convolve.cl, src/typed-ops/defmatrix-hprod.cl, src/typed-ops/defmatrix-move.cl, src/typed-ops/defmatrix-mult-block.cl, src/typed-ops/defmatrix-mult.cl, src/typed-ops/defmatrix-scale.cl, src/typed-ops/defmatrix-subtr.cl, src/typed-ops/defmatrix-transform.cl:
333         * added generics file with generic funciton definitions
334         * mat-add!-range -> mat-add-range!
335         * added some fixnum declarations in discrete convolution and
336           affine transformation routines
337         * added some defgenerics to quiet warnings
339 2006-04-14  Cyrus Harmon  <ch-lisp@bobobeach.com>
341         * clem.asd, src/scalar-types.cl, src/scalar.cl, src/typed-ops/defmatrix-add.cl, src/typed-ops/defmatrix-binary-op.cl, version.lisp-expr:
342         * add scalar-types.cl
343         * added some typed scalar-matrix add functions. this is a hack and
344           should be cleaned up soon.
345         * added more typed mlogior/mlogxor/mlogand methods
347 2006-04-08  Cyrus Harmon  <ch-lisp@bobobeach.com>
349         * version.lisp-expr, make-tinaa-docs.lisp, make-dist.sh, clem.asd, clem-test.asd, clem-doc.asd:
350          * tinaa docs
351          * version.lisp-expr stuff
353 2006-04-05  Cyrus Harmon  <ch-lisp@bobobeach.com>
355         * make-tinaa-docs.lisp: added lisp files for loading to make tinaa docs
357         * clem.asd, bootstrap.cl: cleaning up tinaa doc stuff
359         * clem.asd, bootstrap.cl: tinaa stuff
361 2006-04-03  Cyrus Harmon  <ch-lisp@bobobeach.com>
363         * src/typed-ops/defmatrix-unary-op.cl, clem.asd:
364         Added defmatrix-unary-op
366         * src/typed-ops/defmatrix-subtr.cl:
367            * left a debugging print in. remove it.
369         * src/typed-ops/defmatrix-subtr.cl, src/typed-ops/defmatrix-binary-op.cl, src/matrix.cl, clem.asd, TODO:
370             * Reworked matrix printing logic
371             * Added make-load-form
372             * Added defmatrix-binary-op with mlogand, mlogior, mlogxor and
373               destructive and range variants
374             * Better type inference for destination matrix for mat-subtr
375             * New TODO:  min-val and max-val -> mmin, mmax
377 2006-03-15  Cyrus Harmon  <ch-lisp@bobobeach.com>
379         * clem.asd, clem-test.asd, ChangeLog:     * Bump version number
380             * Update ChangeLog
382 2006-01-26  Cyrus Harmon  <ch-lisp@bobobeach.com>
384         * doc/clem.gmarkup: minor matrix printing change.
386         * ChangeLog: commit ChangeLog changes
388 2006-01-26  Cyrus Harmon  <ch-lisp@bobobeach.com>
390         * doc/clem.gmarkup: minor matrix printing change.
392         * ChangeLog: commit ChangeLog changes
394 2006-01-26  Cyrus Harmon  <ch-lisp@bobobeach.com>
396         * doc/clem.gmarkup: fix bib ref
398 2006-01-25  Cyrus Harmon  <ch-lisp@bobobeach.com>
400         * test/bench-matrix.cl: add more benchmarks
402         * src/typed-ops/defmatrix-mult.cl:
403         add some SBCL specific matrix multiplication hacks
405         * src/defpackage.cl: add mat-hprod
406         remove dups
408         * clem-doc.asd: add doc asdf file
410         * doc/clem.gmarkup: checking in outline.
412 2006-01-23  Cyrus Harmon  <ch-lisp@bobobeach.com>
414         * src/typed-ops/defmatrix-move.cl:
415         * matrix-move-range and matrix-move-range-constrain now take range
416           arguments in both the source and destination matrix so that one can
417           move part of the src matrix to a different part of the dest matrix.
418         * Added generics for matrix-move-range and matrix-move-range-constrain.
420         * src/transform.cl, src/matrix.cl:
421         * mat-copy-proto-dim now takes an initial element
422         * transform-matrix truncates rows and cols to get matrix with
423             integral # of rows and cols
425 2006-01-05  Cyrus Harmon  <ch-lisp@bobobeach.com>
427         * src/defpackage.cl, src/defmatrix.cl, bootstrap.cl:
428         fixing MOP stuff for CMUCL
430 2006-01-03  Cyrus Harmon  <ch-lisp@bobobeach.com>
432         * TODO: work on TODO list.
434 2005-12-05  Cyrus Harmon  <ch-lisp@bobobeach.com>
436         * clem.asd: * bumped version number, added NEWS
438         * src/typed-ops/defmatrix-mref.cl:
439         * some with-typed-matrix-vals that I missed. (needed to remove the t
440           for the removed specialized-array arg.
442 2005-12-05  Cyrus Harmon  <ch-lisp@bobobeach.com>
444         * TODO: update clem TODO list.
446         * test/test-clem.cl: some more minor tests
448         * src/defmatrix.cl, src/defmatrix-types.cl:
449         * removed the specialized-array cruft.
450         * fixed some of the macro-logic to make complex scalar row ops
451           happy
453         * src/metaclasses.cl, src/matrix.cl, src/defmatrix.cl, src/defmatrix-types.cl:
454         * finally got inheritance of meta-class slots from parent classes. I'm
455           not sure if this is the wisest thing, but it seems to work, and
456           solves some OAOO problems.
457         * removed a bunch of now extraneous val-formats and what not.
459 2005-12-04  Cyrus Harmon  <ch-lisp@bobobeach.com>
461         * src/metaclasses.cl:
462         metaclass stuff with debug comments on in case we need to go back here
464         * src/transform.cl, src/metaclasses.cl, src/matrix.cl, src/defmatrix.cl:
465         * check for zero slope in normalize so we don't get a divide-by-zero
466           error
467         * remove print statements in horzcat and vertcat
468         * keep working on filling ancestor slots. I think i've got it
469           this time. the problem is that we need both the slotname
470           and the initarg. because they can be different, we probably should
471           check for that explicitly. At the moment, we just cons up a keyword
472           and use that for the initarg.
473         * added new affine-transform generic and method.
474         * added resize-matrix (which scales, not pads the matrix)
476 2005-11-29  Cyrus Harmon  <ch-lisp@bobobeach.com>
478         * src/defmatrix.cl: use (truncate instead of (truncate (/
480 2005-11-12  Cyrus Harmon  <ch-lisp@bobobeach.com>
482         * ChangeLog: updating ChangeLogs
484         * src/typed-ops/defmatrix-square.cl: added mat-sqrt
486         * src/matrixops.cl:
487         do an in-place in grad-mag to avoid consing a new matrix
489         * test/test-convolve.cl: adding more convolution tests
491         * src/metaclasses.cl:
492         removed initform nil from minval and maxval. This needs more testing!!
494         * src/matrixops.cl: removed bogus comment about gradmag being broken
496         * src/matrix.cl, src/defpackage.cl: trim-one -> mat-trim
498         * src/defmatrix.cl:
499         improve the test for maybe truncate to do the right thing for reals.
501         * src/typed-ops/defmatrix-subset-matrix.cl, clem.asd:
502         * added defmatrix-subset-matrix
503         * and defmatrix-subset-matrix and defmatrix-square to the asd file
505         * src/typed-ops/defmatrix-square.cl: adding typed square func
507         * src/matrixops.cl:
508         added norm-v to the discrete-convolve defgeneric keys
510         * clem-test.asd: added test-convolve.cl to the asdf
512         * src/matrixops.cl:
513         trying to fix gradmag but convolve is busted! BROKEN! FIXME!
515         * src/typed-ops/defmatrix-mult.cl: removed timestamp
517 2005-11-11  Cyrus Harmon  <ch-lisp@bobobeach.com>
519         * test/test-transform.cl, clem-test.asd:
520         cleaning up tests a (very) little bit
522         * src/transform.cl: * added some documentation
523         * moved things around a little bit
525         * src/col-vector.cl: added a defgeneric for array->col-vector
527         * src/matrixops.cl: added some defgenerics
529 2005-10-29  Cyrus Harmon  <ch-lisp@bobobeach.com>
531         * COPYRIGHT: added COPYRIGHT file
533 2005-10-27  Cyrus Harmon  <ch-lisp@bobobeach.com>
535         * clem.asd:
536         adding some static files to the :clem system so that these get
537         packaged up via make-dist.sh
539 2005-10-14  Cyrus Harmon  <ch-lisp@bobobeach.com>
541         * src/metaclasses.cl, src/defmatrix.cl:
542          * use map-set-val-fit in normalize instead of map-set-val
543          * inherit minval and maxval slots from ancestor matrix classes
545 2005-10-13  Cyrus Harmon  <ch-lisp@bobobeach.com>
547         * TODO, ChangeLog: updating ChangeLog and TODO
549         * test/test-transform.cl, test/test-mean.cl, test/test-hprod.cl, test/test-dilate.cl, test/test-convolve.cl, test/test-clem.cl, test/mattest4.cl, src/defpackage.cl:
550         exporting some symbols
552         * clem-test.asd, clem.asd: bumping version number
554 2005-10-12  Cyrus Harmon  <ch-lisp@bobobeach.com>
556         * make-dist.sh: new make-dist shell scripts
558 2005-09-27  Cyrus Harmon  <ch-lisp@bobobeach.com>
560         * src/typed-ops/defmatrix-add.cl: added some add frobs
562 2005-09-07  Cyrus Harmon  <ch-lisp@bobobeach.com>
564         * src/typed-ops/defmatrix-move.cl:
565         added frob for real-matrix to ub8-matrix
567         * src/typed-ops/defmatrix-add.cl:
568         added methods to add a scalar to a matrix
570 2005-09-03  Cyrus Harmon  <ch-lisp@bobobeach.com>
572         * src/typed-ops/defmatrix-hprod.cl, src/metaclasses.cl:
573         fixed metaclasses so that the really do inherit properties
574           from ancestor meta-classes
575         add hprod frobs for complex and real matrices
577 2005-09-01  Cyrus Harmon  <ch-lisp@bobobeach.com>
579         * src/typed-ops/defmatrix-move.cl:
580         added some more frobs for complex, rea, etc...
582 2005-08-31  Cyrus Harmon  <ch-lisp@bobobeach.com>
584         * ChangeLog, TODO, clem.asd, src/defmatrix-types.cl, src/defmatrix.cl, src/matrix.cl, src/typed-matrix-utils.cl, src/typed-ops/defmatrix-abs.cl, src/typed-ops/defmatrix-log.cl, src/typed-ops/defmatrix-move.cl, src/typed-ops/defmatrix-range-ops.cl, test/test-transform.cl:
585         added complex matrix type
586         fixed up real, integer, number, etc... matrices a bit
587         new functions log and abs
588         moved range functions
589         added test-transform.cl
590         added (some, not all yet) new frobs for complex matrices, etc...
592 2005-08-31  Cyrus Harmon  <ch-lisp@bobobeach.com>
594         * src/typed-ops/defmatrix-scale.cl, src/typed-ops/defmatrix-mref.cl, src/typed-ops/defmatrix-minmax.cl, src/typed-ops/defmatrix-add.cl, src/defpackage.cl, src/defmatrix.cl, src/defmatrix-types.cl, clem.asd:
595         initial support for complex matrices
596         real, integer and float matrices should work now
597         moved min and max into their own file
598         currently only do min and max for real matrices and
599         subtypes. we should fix this and use the min and max of the
600         abs for complex matrices.
602 2005-08-30  Cyrus Harmon  <ch-lisp@bobobeach.com>
604         * src/typed-ops/defmatrix-scale.cl, src/defmatrix-types.cl:
605         added complex-matrix type
606         changed the element-types for real-matrix, integer-matrix, etc... to
607           be real, integer, etc...
609 2005-07-24  Cyrus Harmon  <ch-lisp@bobobeach.com>
611         * clem.asd: bumping version # again
613         * clem.asd: made typed-ops depend on interpolation
615         * src/typed-ops/defmatrix-transform.cl:
616         whoops. forgot I had commented out some frobs.
618         * clem.asd: bumped version #
620         * src/typed-ops/defmatrix-transform.cl, src/matrix.cl:
621         added :type fixnum arguments to matrix class definition
622         fixed a bad bug in typed affine-transform routines where I
623           was setting a local column variable to the number of rows
624         added a half variable and add .5d0 and call truncate instead
625         of round, which I think was consing.
627 2005-07-23  Cyrus Harmon  <ch-lisp@bobobeach.com>
629         * src/typed-ops/defmatrix-move.cl: fixed a missing paren
631         * src/typed-ops/defmatrix-move-add-subtr.cl: removed
633 2005-07-22  Cyrus Harmon  <ch-lisp@bobobeach.com>
635         * src/typed-ops/defmatrix-transform.cl:
636         fixed the type of zero. I was declaring zero as the type of the coord,
637         not of the value at the coord. this was compiling (safety 0) but
638         causing the background to be hosed. whoops!
640         * src/typed-ops/defmatrix-move.cl:
641         removed unused third argument of frobs
642         added more bit-matrix move types
644         * src/transform.cl: :x and :y become :x-shift and :y-shift
645         added decf-affine-transformation, move-affine-transformation,
646         copy-affine-transformation
647         added type declarations to the affine-transformation slots
648         added parameters-list function
650 2005-07-20  Cyrus Harmon  <ch-lisp@bobobeach.com>
652         * ChangeLog: updating changelogs
654         * src/typed-ops/defmatrix-transform.cl:
655         fixed how we compute the transform. the notions of x and y were messed up.
657         * src/transform.cl:
658         transform-coord now returns multiple-values x and y instead of a matrix
659         added compute-bounds
661         * src/metaclasses.cl:
662         setting initform of val-format to a list to match how the :val-format
663           args come in from instances of the metaclass
664         filling val-format from ancestor, for what that's worth
666 2005-07-19  Cyrus Harmon  <ch-lisp@bobobeach.com>
668         * test/bench-matrix.cl:
669         added matrix-class to mat-subtr so we can deal w/ negative values
671         * src/typed-ops/defmatrix-move.cl:
672         removed duplicated mat-add definitions
674         * src/typed-ops/defmatrix-subtr.cl, src/typed-ops/defmatrix-move.cl, src/typed-ops/defmatrix-move-add-subtr.cl, src/typed-ops/defmatrix-add.cl, src/metaclasses.cl, src/matrix.cl, clem.asd:
675         moved add move and subtr into their own files
676         working on optimized subtr into different matrix types
678 2005-07-18  Cyrus Harmon  <ch-lisp@bobobeach.com>
680         * test/test-clem.cl, src/typed-matrix-utils.cl, src/scalar.cl, src/row-vector.cl, src/metaclasses.cl, src/matrixops.cl, src/matrix.cl, src/defmatrix.cl, src/col-vector.cl, src/base-vector.cl, clem.asd:
681         added base-vector class
682         lots of code-cleanup stuff
683          ... new defgenerics
684          ... some ignores
685         removed some old code
687 2005-07-17  Cyrus Harmon  <ch-lisp@bobobeach.com>
689         * src/typed-ops/defmatrix-scale.cl, src/typed-ops/defmatrix-mult.cl, src/typed-ops/defmatrix-move-add-subtr.cl, src/typed-ops/defmatrix-hprod.cl, src/matrix.cl:
690         more make-intern -> ch-util:make-intern
691         fixed up a defgeneric that had too many &key args
693         * src/metaclasses.cl: added some defgenerics and FIXMEs
695         * src/defpackage.cl: added m+, m-, m* and m.*
697         * clem.asd: added an order dependency in the typed matrix stuff.
699         * src/defmatrix.cl: make-intern -> ch-util:make-intern
701         * src/matrix.cl: added a bunch of defgenerics
703 2005-07-16  Cyrus Harmon  <ch-lisp@bobobeach.com>
705         * src/matrix.cl:
706         ch-util::closest-common-ancestor -> ch-util:closest-common-ancestor
708         * src/matrix.cl:
709         renamed convenience arithmetic functions (matrix+, matrix-, et al.)
710         reorded some stuff
711         replaced closest-common-ancestor w/ ch-util::closest-common-ancestor
713         * src/matrix.cl: added m.*
714         made m* work with scalars
715         m- now supports unary -
717         * src/typed-ops/defmatrix-scale.cl:
718         try coercing before doing the scale. there's no need (I think) for not consing here...
720         * src/matrixops.cl: removed old discrete-convolve cruft
722         * src/matrix.cl:
723         added print-object method for matrices so we don't have to rely on
724         matrix-print anymore
726 2005-07-15  Cyrus Harmon  <ch-lisp@bobobeach.com>
728         * test/test-convolve.cl:
729         fixing test to work with new separable-discrete-convolve
731         * src/typed-ops/defmatrix-convolve.cl:
732         separable-discrete-convolve now works better
734         * src/matrixops.cl:
735         added gaussian-kernel-1d (should really take dim args for the 2d
736         version)
737         messing with separable-discrete-convolve and gaussian-blur
739         * src/matrix.cl:
740         added sum-cols and sum-rows. I feel like I did this before, but i
741         couldnt' find it. Note that these are untyped. Adding typed versions
742         is trivial.
744         * src/typed-ops/defmatrix-convolve.cl:
745         ok, separable-discrete-convolve is in better shape now...
747 2005-07-14  Cyrus Harmon  <ch-lisp@bobobeach.com>
749         * src/row-vector.cl, src/col-vector.cl:
750         allocate-matrix-vals now matches what matrix uses. this shoud probably go away, however.
752         * clem.asd: added a depends on ch-util
754         * test/test-convolve.cl, src/typed-ops/defmatrix-sum.cl, src/typed-ops/defmatrix-move-add-subtr.cl, src/matrixops.cl, doc/index.html:
755         moved sum type-specific functions into their own file
756         trying to make the convolve stuff work quickly
757         removing timestamps
758         tests
760         * clem.asd: trying to get fast discrete-convolve working
761         removing evil timestamps
762         added a super-secret %%sum-range macro
764         * src/typed-ops/defmatrix-convolve.cl: adding typed convolve functions
766 2005-07-13  Cyrus Harmon  <ch-lisp@bobobeach.com>
768         * src/transform.cl: timestamps are a bad idea in source files
770         * src/interpolation.cl: time stamps are a bad idea in source files
772         * src/defpackage.cl:
773         export the following symbols: mat-copy-proto, affine-transformation,
774         transform-matrix, matrix-move.
776         * src/interpolation.cl:
777         added a once-only macro around the bilinear-interp macro. I should
778         probably do the same for the quadratic one.
780         * src/typed-ops/defmatrix-transform.cl:
781         using types for quadratic interp macros now
783         * src/interpolation.cl:
784         had to add a type argument to quadratic-kernel and quadratic
785         interpolate to make SBCLs compiler happy.
787         * clem.asd: added interpolation file to asd
789         * src/typed-ops/defmatrix-transform.cl:
790         added quadratic interpolation. not sure that these work with types
791         other than double-float, however.
793         * src/interpolation.cl: ... moved interpolation functions here.
794         ... added bilinear and quadratic interpolation routines.  note, these just
795         interpolate the values, to actually interprolate the values in a
796         matrix, say via an affine tranformation, see transform.cl
798 2005-07-12  Cyrus Harmon  <ch-lisp@bobobeach.com>
800         * src/typed-ops/defmatrix-transform.cl: restore all of the frobs
802         * src/defmatrix-types.cl:
803         use #. to compute the values for minval and maxval
805 2005-07-11  Cyrus Harmon  <ch-lisp@bobobeach.com>
807         * src/typed-ops/defmatrix-transform.cl:
808         works fine for floats now. working on the rest...
810         * src/transform.cl: added arguments for interpolation
812         * src/transform.cl:
813         make a subclass of double-float-matrix to hold the affine
814         transformation parameters. appropriate changes to make this work
815         properly.
817         * src/matrix.cl:
818         added rvref and cvref for row-vector and column-vector refs.
820         * src/defmatrix.cl: removed defmatrix-method
822         * src/typed-ops/defmatrix-transform.cl:
823         made %transform-matrix a lot faster by avoiding a full matrix-multiply
824         using foley et al.'s trick that exploits the structure of the affine
825         transformation matrix.
827 2005-07-10  Cyrus Harmon  <ch-lisp@bobobeach.com>
829         * src/typed-ops/defmatrix-move-add-subtr.cl:
830         added more move/add/subtr types
832         * src/transform.cl, clem.asd: added transform.cl
834         * src/typed-ops/defmatrix-transform.cl:
835         changed the type-specific function from transform-matrix ->
836            %transform-matrix
837         range over the space of the output matrix, not the input matrix
839 2005-07-08  Cyrus Harmon  <ch-lisp@bobobeach.com>
841         * src/typed-ops/defmatrix-transform.cl, clem.asd:
842         added defmatrix-transform which defines optimized transform-matrix functions
844         * src/matrix.cl:
845         added comments about the need for optimized invert-matrix routines
847 2005-07-07  Cyrus Harmon  <ch-lisp@bobobeach.com>
849         * src/typed-ops/defmatrix-mult.cl: removed mat-mult-range
850         made mat-mult3 non-consing
852         * src/matrix.cl:
853         rows and cols now use array-dimension instead of array-dimensions
854         which is non-consing.
856         * src/matrix.cl:
857         array->matrix goes straight to matrix, not to row-vector, col-vector or scalar
859 2005-07-06  Cyrus Harmon  <ch-lisp@bobobeach.com>
861         * test/test-clem.cl, clem.asd, clem-test.asd: removing registry stuff
862         fixing a type (ch-uti -> ch-util)
864 2005-07-01  Cyrus Harmon  <ch-lisp@bobobeach.com>
866         * Makefile, src/.cvsignore, src/typed-ops/.cvsignore, test/.cvsignore:
867         adding Makefile and fixing up cvsignores
869         * README, clem-test.asd, clem.asd, src/defpackage.cl, src/typed-ops/defmatrix-move-add-subtr.cl, src/typed-ops/defmatrix-mult-debug.cl, test/test-clem.cl, test/test-defmatrix.cl:
870         chutil -> ch-util
871         cleaning up defmatrix ops a bit
873         * test/test-defmatrix.cl, test/test-clem.cl, src/typed-ops/defmatrix-mult-block.cl, clem.asd, clem-test.asd:
874         Added defmatrix-mult-block and some initial blocking mulitply functions which
875           are about 2x faster
876         Fixing up test packages to work under the new scheme
878 2005-06-30  Cyrus Harmon  <ch-lisp@bobobeach.com>
880         * clem.asd, doc/index.html, src/.cvsignore, src/defmatrix-types-debug.cl, src/typed-ops/defmatrix-mref-debug.cl, src/typed-ops/defmatrix-mref.cl, src/typed-ops/defmatrix-mult-debug.cl, test/.cvsignore, test/test-clem4.cl:
881         various cleanups as I get ready to move this up two levels.
883         * src/discrete-convolve-ppc.cl: removing
885         * src/discrete-convolve-ppc.cl: adding this so that I can delete it.
887 2005-06-23  Cyrus Harmon  <ch-lisp@bobobeach.com>
889         * test/test-mult.cl, test/test-hprod.cl, test/test-clem2.cl, src/typed-ops/defmatrix-mult.cl, src/typed-ops/defmatrix-move-add-subtr.cl, src/matrixops.cl, src/matrix.cl, clem.asd:
890         * added test-hprod file and to clem-test.asd
891         * added defmatrix-mult file and to clem.asd
892         * map-matrix-copy now accepts a matrix-class argument and calls
893            make-instance instead of mat-copy-proto (which should go away!)
894         * variance-window now returns a double-float-matrix
895         * trying to make double -> integer matrix moves work properly
896         * work on the tests a bit
898 2005-06-22  Cyrus Harmon  <ch-lisp@bobobeach.com>
900         * clem-test.asd: * added test-hprod file and to clem-test.asd
901         * added defmatrix-mult file and to clem.asd
902         * map-matrix-copy now accepts a matrix-class argument and calls
903            make-instance instead of mat-copy-proto (which should go away!)
904         * variance-window now returns a double-float-matrix
905         * trying to make double -> integer matrix moves work properly
906         * work on the tests a bit
908         * TODO: * updated TODO
909         * added test-hprod file and to clem-test.asd
910         * added defmatrix-mult file and to clem.asd
911         * map-matrix-copy now accepts a matrix-class argument and calls
912            make-instance instead of mat-copy-proto (which should go away!)
913         * variance-window now returns a double-float-matrix
914         * trying to make double -> integer matrix moves work properly
915         * work on the tests a bit
917 2005-06-15  Cyrus Harmon  <ch-lisp@bobobeach.com>
919         * test/test-clem2.cl:
920         fixed single-float literal vals (were erroneous doubles)
922         * src/defmatrix.cl: whoops. left some debug statements in here...
924         * src/defmatrix-hprod.cl, src/defmatrix-move-add-subtr.cl, src/defmatrix-scale.cl:
925         moved these files to typed-ops
927         * test/test-clem2.cl, src/typed-ops/defmatrix-hprod.cl, src/defmatrix.cl, clem.asd, LICENSE, ChangeLog:
928         moved some typed matrix operations into their own directory
929            ... will move more soon
930         added more typed hprods
931         added more hprod tests via the frobber
932         modified asdf to reflect above
933         minor change to license
934         changelog update
936         * src/typed-ops/defmatrix-hprod.cl, src/typed-ops/defmatrix-move-add-subtr.cl, src/typed-ops/defmatrix-scale.cl:
937         moved files into their own directory
939 2005-06-15  Cyrus Harmon  <ch-lisp@bobobeach.com>
941         * clem.asd, clem-test.asd: more asdf cleanup
943         * test/test-mean.cl, test/test-gaussian-convolve.cl, test/test-dilate.cl, test/test-defmatrix.cl, test/test-clem2.cl, test/test-clem.cl, test/mattest4.cl, test/mattest3.cl, test/bench-matrix.cl, src/typed-matrix-utils.cl, src/matrixops.cl, src/defpackage.cl, src/defmatrix.cl, src/defmatrix-types.cl, src/defmatrix-scale.cl, src/defmatrix-move-add-subtr.cl, src/defmatrix-hprod.cl, bootstrap.cl:
944         * The big unsigned-byte -> ub8 and friends rename.
945           ... Now use ub32-matrix instead of unsigned-long matrix.
946               Some folks might hate the numbers, but word and long were
947               just too vague and all of those unsigned ints are in fact
948               bytes to lisp anyway!
950 2005-06-14  Cyrus Harmon  <ch-lisp@bobobeach.com>
952         * test/test-clem3.cl: making function names agree
953         removing erroneous compiler output that popped in here somehow
955         * src/defmatrix-types.cl, src/defmatrix-move-add-subtr.cl:
956         moved some method definition frobs into their own file so we don't
957         have to compile everything so often
959         * clem.asd, clem-test.asd:
960         cleaned up asdf file logic a bit. Now there's a piece of code that
961           needs to go in each .asd file, but we don't get screwy behavior
962           based on partial overriding of asdf methods. Now each system gets
963           its own subclass of cl-source-file type and components are specified
964           as :clem-cl-source-file, for instance, instead of :file. Files
965           usually have .cl as the suffix, but this is easily changeable on a
966           per-system basis and fasls go in a separate directory.
968         * test/test-clem3.cl, test/test-clem2.cl, src/defmatrix.cl, src/defmatrix-types.cl, src/defmatrix-scale.cl, src/defmatrix-hprod.cl, clem.asd, TODO:
969         Added defmatrix-hprod and defmatrix-scale for matrix scale and hadamard product
970         removed unused specialized-type parameter from with-map-range
971         removed unused with-map-range-vals
972         added some ignore declarations
973         removed gensyms for loop variables when there was no macro body
974         moved matrix-scale definitions into their own file
975         added more tests
977         * src/defmatrix-types.cl:
978         finally found the extraneous b and removed it!
980 2005-06-14  Cyrus Harmon  <ch-lisp@bobobeach.com>
982         * test/test-clem3.cl: making function names agree
983         removing erroneous compiler output that popped in here somehow
985         * src/defmatrix-types.cl, src/defmatrix-move-add-subtr.cl:
986         moved some method definition frobs into their own file so we don't
987         have to compile everything so often
989         * clem.asd, clem-test.asd:
990         cleaned up asdf file logic a bit. Now there's a piece of code that
991           needs to go in each .asd file, but we don't get screwy behavior
992           based on partial overriding of asdf methods. Now each system gets
993           its own subclass of cl-source-file type and components are specified
994           as :clem-cl-source-file, for instance, instead of :file. Files
995           usually have .cl as the suffix, but this is easily changeable on a
996           per-system basis and fasls go in a separate directory.
998         * test/test-clem3.cl, test/test-clem2.cl, src/defmatrix.cl, src/defmatrix-types.cl, src/defmatrix-scale.cl, src/defmatrix-hprod.cl, clem.asd, TODO:
999         Added defmatrix-hprod and defmatrix-scale for matrix scale and hadamard product
1000         removed unused specialized-type parameter from with-map-range
1001         removed unused with-map-range-vals
1002         added some ignore declarations
1003         removed gensyms for loop variables when there was no macro body
1004         moved matrix-scale definitions into their own file
1005         added more tests
1007         * src/defmatrix-types.cl:
1008         finally found the extraneous b and removed it!
1010 2005-06-14  Cyrus Harmon  <ch-lisp@bobobeach.com>
1012         * test/test-clem3.cl, test/test-clem2.cl, src/defmatrix.cl, src/defmatrix-types.cl, src/defmatrix-scale.cl, src/defmatrix-hprod.cl, clem.asd, TODO:
1013         Added defmatrix-hprod and defmatrix-scale for matrix scale and hadamard product
1014         removed unused specialized-type parameter from with-map-range
1015         removed unused with-map-range-vals
1016         added some ignore declarations
1017         removed gensyms for loop variables when there was no macro body
1018         moved matrix-scale definitions into their own file
1019         added more tests
1021         * src/defmatrix-types.cl:
1022         finally found the extraneous b and removed it!
1024         * test/test-clem3.cl, test/test-clem2.cl, clem-test.asd:
1025         Added tests for mat-scale and mat-scale!
1026         Added test-clem3 for messing around
1027         Added dependencies on defpackage in the asdf file
1029         * src/defmatrix.cl, src/defmatrix-types.cl:
1030         added :execute to eval-when forms
1031         fixed accumulator type of signed-bytes and signed-words
1032           ... (unsigned-byte 32) -> (signed-byte 32)
1033         added def-matrix-scale
1034         added forms to call def-matrix-scale for the basic types
1036 2005-06-13  Cyrus Harmon  <ch-lisp@bobobeach.com>
1038         * ChangeLog: more ChangeLog stuff.
1040         * TODO, README, LICENSE:
1041         Added LICENSE and TODO. Removed TODO stuff from README.
1043         * clem.asd: removed util dependency
1045         * src/metaclasses.cl, src/matrix.cl, src/defpackage.cl, src/defmatrix.cl:
1046         removed dependency on util. Had to copy some stuff over here to do it, however. Goes against OAOO but means we don't need util to run clem (except for the tests).
1048         * src/row-vector.cl, src/col-vector.cl:
1049         remove reference to undefined functions and call make-instance. WARNING: this hasn't been tested, but at least it compiles now!
1051 2005-06-13  Cyrus Harmon  <ch-lisp@bobobeach.com>
1053         * TODO, README, LICENSE:
1054         Added LICENSE and TODO. Removed TODO stuff from README.
1056         * clem.asd: removed util dependency
1058         * src/metaclasses.cl, src/matrix.cl, src/defpackage.cl, src/defmatrix.cl:
1059         removed dependency on util. Had to copy some stuff over here to do it, however. Goes against OAOO but means we don't need util to run clem (except for the tests).
1061         * src/row-vector.cl, src/col-vector.cl:
1062         remove reference to undefined functions and call make-instance. WARNING: this hasn't been tested, but at least it compiles now!
1064 2005-06-13  Cyrus Harmon  <ch-lisp@bobobeach.com>
1066         * test/test-clem2.cl: adding new tests (slowly).
1068         * src/typed-matrix-utils.cl, src/metaclasses.cl, src/matrix.cl, src/defpackage.cl, src/defmatrix.cl, src/defmatrix-types.cl:
1069         val-format is now a metaclass option rather than a class allocated variable
1070         ... added val-format stuff to metaclass
1071         added def-move-element and def-matrix-move
1072         added new matrix conversion/move functions
1073         ... this still needs to be cleaned up!
1074         added def-matrix-move and supporting macros
1075         export #:identity-matrix and #:copy-to-bit-matrix
1076         trying to clean up the copy-to-<matrix-type> stuff
1078         * src/scalar.cl: use element-type instead of storage-type
1080         * src/row-vector.cl, src/col-vector.cl:
1081         Cleanup row-vector and col-vector
1082         ... use element-type instead of storage-type
1083         ... call make-instance instead of xxx-vector functions
1085 2005-06-09  Cyrus Harmon  <ch-lisp@bobobeach.com>
1087         * src/matrix.cl:
1088           *  cleaned up the scalar-op stuff to use macros instead of eval
1090         * test/test-clem2.cl, src/metaclasses.cl, src/matrix.cl, src/defpackage.cl, src/defmatrix.cl, src/defmatrix-types.cl:
1091           * Lots of changes to clem. From here on out, I'll try to do a better
1092                 job of documenting them.
1093           * new matrix typed arithmetic functions.
1094           * cleaning up the matrix macro system
1095           * more tests
1097 2005-05-12  Cyrus Harmon  <ch-lisp@bobobeach.com>
1099         * clem.asd: bumped version #.
1101         * src/defmatrix-types.cl:
1102         added eval-when (:compile-toplevel :load-toplevel) around the matrix
1103         definitions so that the function definitions can use the classes to DTRT.
1105 2005-05-07  Cyrus Harmon  <ch-lisp@bobobeach.com>
1107         * clem.asd, src/defmatrix-types.cl, src/defmatrix.cl, src/matrix.cl, src/metaclasses.cl, src/typed-matrix.cl:
1108         finally! got things back to a working state.
1109         summary of major changes:
1110         1. matrix now is a standard-matrix-class
1111         2. added accessors for standard-matrix-class element type
1112            and specialized-array-p or whatever
1113         3. funky eval-when hacks to get the matrix classes defined before the
1114            functions which use the meta-data at function definition time
1115            to generate the proper declare statements so that all of this
1116            runs quickly.
1118 2005-04-26  Cyrus Harmon  <ch-lisp@bobobeach.com>
1120         * clem-test.asd, clem.asd, src/defmatrix-types.cl, src/defmatrix.cl, src/defpackage.cl, src/matrix.cl, src/metaclasses.cl:
1121         checkpoint so I can use on multiple computers.
1123         * test/test-clem2.cl, test/test-defmatrix.cl, test/test-gaussian-convolve.cl:
1124         fixing tests for new regime.
1126 2005-04-19  Cyrus Harmon  <ch-lisp@bobobeach.com>
1128         * test/bench-matrix.cl: getting ready to for metaclass stuff.
1130 2005-04-18  Cyrus Harmon  <ch-lisp@bobobeach.com>
1132         * src/matrix.cl, src/matrixops.cl, src/typed-matrix.cl:
1133         checkpoint now that we cons a lot less than we used to when doing a
1134         discrete-convolve. We still have a little ways to go, but it's much
1135         better than before.
1137 2005-04-15  Cyrus Harmon  <ch-lisp@bobobeach.com>
1139         * .cvsignore, README, bootstrap.cl, clem-test.asd, clem.asd, src/CHANGES, src/README, src/col-vector.cl, src/defpackage.cl, src/matrix.cl, src/matrixops.cl, src/matrixutils.cl, src/row-vector.cl, src/scalar.cl, src/typed-matrix-utils.cl, src/typed-matrix.cl, test/bench-matrix.cl, test/defpackage.cl, test/mat-test.cl, test/mattest2.cl, test/mattest3.cl, test/mattest4.cl, test/scratch.cl, test/test-clem.cl, test/test-convolve.cl, test/test-defmatrix.cl, test/test-dilate.cl, test/test-gaussian-convolve-1.cl, test/test-gaussian-convolve.cl, test/test-mean.cl, test/test-mult.cl, test/test-scalar.cl, test/vector-test.cl:
1140         renamed the matrix package to ... CLEM ...