goops.c (TEST_CHANGE_CLASS): Update variable class after class change.
[bpt/guile.git] / oop / ChangeLog
CommitLineData
266f3a23
MD
12003-04-17 Mikael Djurfeldt <djurfeldt@nada.kth.se>
2
3 * goops.scm (compute-getters-n-setters): Check for bad init-thunk.
47cd67db
MD
4 (eqv?): Added default method.
5 (equal?): New default method which uses eqv?.
266f3a23 6
58241edc
MD
72003-04-15 Mikael Djurfeldt <djurfeldt@nada.kth.se>
8
9 * goops.scm (compute-getter-method): For custom getter: Check
10 boundness even if there is an init-thunk. (The getter can return
11 #<unbound> even if the slot has been set before.)
12 (remove-class-accessors!): Also remove accessor-method from its
13 accessor.
14
21ab2aeb
MD
152003-04-13 Mikael Djurfeldt <djurfeldt@nada.kth.se>
16
17 * goops.scm (compute-getters-n-setters/verify-accessors): Better
18 check of format of value returned by compute-get-n-set.
19 (compute-getters-n-setters): Extended format of slot
20 getters-n-setters to indicate position and size of slot memory
21 allocated in instances.
22
73be1d9e
MV
232003-04-05 Marius Vollmer <mvo@zagadka.de>
24
25 * Changed license terms to the plain LGPL thru-out.
26
e6726828
MD
272003-03-19 Mikael Djurfeldt <mdj@kvast.blakulla.net>
28
29 * goops.scm (process-class-pre-define-accessor): Temporary kludge
30 to fix a problem introduced by my previous change.
31
c31142ee
MD
322003-03-17 Mikael Djurfeldt <djurfeldt@nada.kth.se>
33
34 * goops.scm (process-class-pre-define-generic,
35 process-class-pre-define-accessor, process-define-generic,
36 process-define-accessor): New functions.
37 (define-class-pre-definition): Use
38 process-class-pre-define-generic and
39 process-class-pre-define-accessor; Make sure not to create a new
40 local variable if the variable has been imported.
41 (define-generic): Use process-define-generic.
42 (define-accessor): Use process-define-accessor.
43
c9fa1748
MD
442003-03-12 Mikael Djurfeldt <djurfeldt@nada.kth.se>
45
46 * goops.scm (merge-generics): Make sure not to merge a gf with
47 itself. That would be the cause of a real binding collision.
48
f595ccfe
MD
492003-03-11 Mikael Djurfeldt <djurfeldt@nada.kth.se>
50
c614a00b
MD
51 * goops/util.scm (filter): Removed. (Now supplied by core.)
52
f595ccfe
MD
53 * goops.scm (define-extended-generics): New syntax.
54 (<class> <operator-class> <entity-class> <entity>): Marked as
55 replacements.
f8af5c6d
MD
56 (upgrade-accessor): Renamed from upgrade-generic-with-setter.
57 (ensure-accessor, upgrade-accessor): Rewritten to accomodate the
58 new <accessor> class.
59 (merge-accessors): Provide for merging of accessors imported from
60 different modules under the same name.
f595ccfe 61
7b07e5ef 622003-03-07 Mikael Djurfeldt <djurfeldt@nada.kth.se>
a48d60b1
MD
63
64 * goops.scm (equal?): Define default method.
7b07e5ef
MD
65 (merge-generics): Provide for merging of generic functions
66 imported into a module under the same name.
a48d60b1 67
27b32aad
MD
682003-01-18 Mikael Djurfeldt <djurfeldt@nada.kth.se>
69
70 * goops.scm (method): Construct a new copy of the constant '('())
71 for every macro invocation.
72
bbf8d523
MD
732003-01-08 Mikael Djurfeldt <djurfeldt@nada.kth.se>
74
75 * goops.scm (upgrade-generic-with-setter,
76 compute-new-list-of-methods): Use methods slot directly instead of
77 generic-function-methods.
78 (upgrade-generic-with-setter): Handle <extended-generic>:s.
79 (define-extended-generic): New syntax.
80 (make-extended-generic): New function.
81
b2cbe8d8
RB
822002-12-08 Rob Browning <rlb@defaultvalue.org>
83
84 * Makefile.am (subpkgdatadir): VERSION -> GUILE_EFFECTIVE_VERSION.
85
86 * goops/Makefile.am (subpkgdatadir): VERSION ->
87 GUILE_EFFECTIVE_VERSION.
88
9089f73c
DH
892002-11-16 Dirk Herrmann <D.Herrmann@tu-bs.de>
90
91 * goops.scm (standard-define-class): Changed definition to form
92 a 'real' macro definition.
93
33e04d54
DH
942002-07-13 Dirk Herrmann <D.Herrmann@tu-bs.de>
95
96 * goops.scm (define-generic, define-accessor): Make sure that
97 define-generic and define-accessor will continue to work when
98 mmacros are expanded before execution.
99
9f045403
DH
1002002-07-13 Dirk Herrmann <D.Herrmann@tu-bs.de>
101
102 * goops.scm (define-class): Make sure that define-class will
103 continue to work when mmacros are expanded before execution.
104
9ffa41db
DH
1052002-07-08 Dirk Herrmann <D.Herrmann@tu-bs.de>
106
107 * goops.scm (define-generic, define-accessor): Make sure that
108 implicit redefines only happen on top level.
109
110 * goops.scm (define-class, define-generic, define-accessor),
111 goops/stklos.scm (define-class): Use mmacros instead of macros.
112
7c38399f
DH
1132002-07-07 Dirk Herrmann <D.Herrmann@tu-bs.de>
114
115 * goops/save.scm (restore): Replaced "macro" by mmacro.
116
1a179b03
MD
1172001-10-21 Mikael Djurfeldt <mdj@linnaeus>
118
119 * goops.scm, goops/active-slot.scm, goops/compile.scm,
120 goops/composite-slot.scm, goops/describe.scm, goops/dispatch.scm,
121 goops/old-define-method.scm, goops/save.scm, goops/util.scm: Move
122 module the system directives `export', `export-syntax',
123 `re-export' and `re-export-syntax' into the `define-module' form.
124 This is the recommended way of exporting bindings.
125
969e8e45
MV
1262001-08-25 Marius Vollmer <mvo@zagadka.ping.de>
127
128 * Makefile.am, goops/Makefile.am: (AUTOMAKE_OPTIONS): Change
129 "foreign" to "gnu".
130
54866b6c
MV
1312001-07-29 Marius Vollmer <mvo@zagadka.ping.de>
132
133 * goops/dispatch.scm (hashset-index): Renumbered, since the vcell
134 slot of structs has been removed.
135
f3a51787
MG
1362001-07-18 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
137
138 * goops/util.scm: Updated copyright notice.
139
8d4ab692
MG
1402001-07-17 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
141
142 * goops/save.scm: Use `re-export' instead of `export' when
143 re-exporting `make-unbound'.
144
feeedafb
MV
1452001-06-05 Marius Vollmer <mvo@zagadka.ping.de>
146
147 * goops.scm: Use `re-export' instead of `export' when re-exporting
148 `class-of'.
149
7c628196
MV
1502001-05-19 Marius Vollmer <mvo@zagadka.ping.de>
151
152 * goops.scm: Call `%init-goops-builtins' instead of using the
153 `(oop goops goopscore)' module.
154
f3f9dcbc
MV
1552001-05-10 Marius Vollmer <mvo@zagadka.ping.de>
156
157 * goops/compile.scm (compile-method): Insert comment that
158 `procedure-source' can not be guaranteed to be reliable or
159 efficient.
160
c10ecc4c
MV
1612001-05-05 Marius Vollmer <mvo@zagadka.ping.de>
162
163 * goops.scm (initialize-object-procedure): Use
164 `valid-object-procedure?' instead of explicit tag magic.
165 (object-procedure-tags): Removed.
166
167 * goops/util.scm (top-level-env): Use `current-module' instead of
168 the deprecated *top-level-lookup-closure*.
169
c90fcdf6
RB
1702001-04-28 Rob Browning <rlb@cs.utexas.edu>
171
172 * goops/save.scm (write-readably): rename list* to cons*.
173
174 * goops.scm (method): rename list* to cons*.
175
b592004c
MD
1762001-04-10 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
177
178 * goops/Makefile.am, goops/goopscore.scm: Reverted changes of
179 2001-04-03, 2001-03-09.
180
a0826166
KN
1812001-04-03 Keisuke Nishida <kxn30@po.cwru.edu>
182
183 * goops/Makefile.am (goops_sources): Include goopscore.scm.
184 Thanks to Dale P. Smith.
185
a255cf13
KN
1862001-03-29 Keisuke Nishida <kxn30@po.cwru.edu>
187
188 * goops/goopscore.scm: New file.
189
71d540f7
MD
1902001-03-09 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
191
192 * goops.scm (define-method): Only accept new syntax.
193
194 * Makefile.am: Added old-define-method.scm.
195
196 * goops/old-define-method.scm: New file.
197
198 * goops.scm, goops/save.scm, goops/composite-slot.scm,
199 goops/active-slot.scm: Use new method syntax.
200
cc6c7fee
MD
2012001-03-04 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
202
b432fb4b
MD
203 * goops/compile.scm (compile-method): Tag method closure for body
204 expansion.
205
cc6c7fee
MD
206 * goops.scm (change-object-class): Quote empty list constants.
207 (method): Reverted previous change (enclosing body);
208 Quote empty list.
b432fb4b
MD
209 (initialize <method>): Supply `dummy-procedure' as default instead
210 of creating a new closure.
cc6c7fee 211
b432fb4b
MD
212 * goops/internal.scm: Re-export (oop goops) without copying
213 bindings.
214
19b6a58d
KN
2152001-02-23 Keisuke Nishida <kxn30@po.cwru.edu>
216
217 * goops.scm (method): Enclosed BODY by `(let () ...)'.
218 This allows local defines at the beginning of methods.
219
3b505adf
DH
2202000-12-15 Dirk Herrmann <D.Herrmann@tu-bs.de>
221
222 * goops/save.scm (load-objects): eval-in-module is deprecated.
223 Use eval instead.
224
ca83b028
DH
2252000-11-24 Dirk Herrmann <D.Herrmann@tu-bs.de>
226
227 * goops.scm: Don't export removed %logand any more.
228
229 * goops/dispatch.scm (cache-try-hash!): Use logand instead of
230 %logand.
231
b100f5ee
MD
2322000-11-06 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
233
234 * goops.scm (internal-add-method!): Set n-specialized of a generic
235 function to the number of specializers regardless if it has rest
236 args or not.
237
238 * goops/dispatch.scm (method-cache-install!): Use n-specialized +
239 1 args for type matching. (Thanks to Lars J. Aas.)
240
14f1d9fe
MD
2412000-10-23 Mikael Djurfeldt <mdj@linnaeus.mit.edu>
242
243 * goops.scm (goops-error): Removed use of oldfmt.
244