~peter-pearse/ubuntu/natty/guile-1.8/prop001

« back to all changes in this revision

Viewing changes to lang/elisp/ChangeLog-2008

  • Committer: Bazaar Package Importer
  • Author(s): Steve Langasek
  • Date: 2009-06-04 19:01:38 UTC
  • mfrom: (8.1.1 sid)
  • Revision ID: james.westby@ubuntu.com-20090604190138-1ao3t6sj31cqvcfe
Tags: 1.8.6+1-1ubuntu1
* Merge from Debian unstable, remaining changes:
  - Build with -Wno-error.
  - Build with thread support. Some guile-using programs like autogen need it.
  - Add debian/guile-1.8-libs.shlibs: Thread support breaks ABI, bump the soname.
* Dropped changes:
  - libltdl3-dev -> libltdl7-dev: current libltdl-dev Provides: both.
  - debian/patches/libtool-ftbfs.diff: integrated upstream.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
2008-04-14  Neil Jerram  <neil@ossau.uklinux.net>
 
2
 
 
3
        * primitives/symprop.scm (get): Use lambda->nil.
 
4
 
 
5
        * primitives/strings.scm (aset): New primitive.
 
6
 
 
7
        * internals/load.scm (load): Use in-vicinity (instead of
 
8
        string-append) to add a slash if needed.
 
9
 
 
10
2004-02-08  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
 
11
 
 
12
        * primitives/Makefile.am (TAGS_FILES), internals/Makefile.am
 
13
        (TAGS_FILES), Makefile.am (TAGS_FILES): Use this variable instead
 
14
        of ETAGS_ARGS so that TAGS can be built using separate build
 
15
        directory.
 
16
 
 
17
2003-11-01  Neil Jerram  <neil@ossau.uklinux.net>
 
18
 
 
19
        * internals/format.scm (format), internals/signal.scm (error),
 
20
        internals/load.scm (load): Export using #:replace to avoid
 
21
        duplicate binding warnings.
 
22
 
 
23
2003-01-05  Marius Vollmer  <mvo@zagadka.ping.de>
 
24
 
 
25
        * primitives/Makefile.am (elisp_sources): Added char-table.scm.
 
26
 
 
27
2002-12-28  Neil Jerram  <neil@ossau.uklinux.net>
 
28
 
 
29
        * base.scm (lang): Use char-table module.
 
30
 
 
31
        * primitives/char-table.scm (lang): New (stub definitions).
 
32
 
 
33
2002-12-08  Rob Browning  <rlb@defaultvalue.org>
 
34
 
 
35
        * Makefile.am (subpkgdatadir): VERSION -> GUILE_EFFECTIVE_VERSION.
 
36
 
 
37
        * primitives/Makefile.am (subpkgdatadir): VERSION ->
 
38
        GUILE_EFFECTIVE_VERSION.
 
39
 
 
40
        * internals/Makefile.am (subpkgdatadir): VERSION ->
 
41
        GUILE_EFFECTIVE_VERSION.
 
42
 
 
43
2002-02-13  Neil Jerram  <neil@ossau.uklinux.net>
 
44
 
 
45
        * base.scm (load-emacs): Add optional parameters for specifying an
 
46
        alternative load path, and for debugging this.  (Thanks to
 
47
        Thien-Thi Nguyen!)
 
48
 
 
49
        * primitives/syntax.scm (setq): Use `set'.
 
50
 
 
51
        * internals/set.scm (set): Fixed to support variables that are
 
52
        imported from other modules.
 
53
 
 
54
2002-02-12  Neil Jerram  <neil@ossau.uklinux.net>
 
55
 
 
56
        * transform.scm (scheme): Use set-current-module to ensure
 
57
        expected behaviour of resolve-module.
 
58
 
 
59
2002-02-08  Neil Jerram  <neil@ossau.uklinux.net>
 
60
 
 
61
        * STATUS: New file.
 
62
 
 
63
        * README: Updated.
 
64
 
 
65
        * interface.scm (translate-elisp): New exported procedure.
 
66
        (elisp-function): Symbol var is `obj', not `symbol'.
 
67
        
 
68
        * internals/lambda.scm, primitives/fns.scm: Fix confusion between
 
69
        interactive-spec and interactive-specification.
 
70
        
 
71
        * internals/lambda.scm (transform-lambda), primitives/syntax.scm
 
72
        (defmacro): Bind unspecified optional and rest arguments to #nil,
 
73
        not #f.
 
74
 
 
75
        * internals/null.scm (->nil, lambda->nil): New, exported.
 
76
        (null): Use ->nil.
 
77
 
 
78
        * primitives/features.scm (featurep), primitives/fns.scm
 
79
        (fboundp, subrp): Use ->nil.
 
80
 
 
81
        * internals/lists.scm (cons, setcdr, memq, member, assq, assoc):
 
82
        Simplified.
 
83
        (car, cdr): Return #nil rather than #f.
 
84
 
 
85
        * primitives/load.scm (current-load-list), primitives/pure.scm
 
86
        (purify-flag): Set to #nil, not #f.
 
87
 
 
88
        * primitives/match.scm (string-match): Return #nil rather than #f.
 
89
 
 
90
        * primitives/numbers.scm (integerp, numberp),
 
91
        primitives/strings.scm (string-lessp, stringp): Use lambda->nil.
 
92
 
 
93
        * primitives/symprop.scm (boundp): Use ->nil.
 
94
        (symbolp, local-variable-if-set-p): Return #nil rather than #f.
 
95
 
 
96
        * primitives/syntax.scm (prog1, prog2): Mangle variable names
 
97
        further to lessen possibility of conflicts.
 
98
        (if, and, or, cond): Return #nil rather than #f.
 
99
        (cond): Return #t rather than t (which is undefined).
 
100
        (let, let*): Bind uninitialized variables to #nil, not #f.
 
101
        
 
102
        * transform.scm: Resolve inconsistency in usage of `map', and add
 
103
        an explanatory note.  Also cleaned up use of subsidiary
 
104
        transformation functions.  Also use cons-source wherever possible.
 
105
        (transform-datum, transform-quote): New.
 
106
        (transform-quasiquote): Renamed from `transform-inside-qq'.
 
107
        (transform-application): Apply `transform-quote' to application
 
108
        args.
 
109
        (cars->nil): Removed.
 
110
        
 
111
        * internals/null.scm (null), primitives/lists.scm (cons, car, cdr,
 
112
        setcdr, memq, member, assq, assoc, nth): Update to take into
 
113
        account new libguile support for Elisp nil value.
 
114
 
 
115
2002-02-06  Neil Jerram  <neil@ossau.uklinux.net>
 
116
 
 
117
        * example.el (time): New macro, for performance measurement.
 
118
        Accompanying comment compares results for Guile and Emacs.
 
119
        
 
120
        * transform.scm (scheme): New macro.
 
121
        (transformer): New implementation of `scheme' escape that doesn't
 
122
        rely on (lang elisp base) importing Guile bindings.
 
123
 
 
124
        * base.scm: No longer import anything from (guile).
 
125
        (load-emacs): Add scheme form to ensure that keywords
 
126
        read option is set correctly.
 
127
 
 
128
        * primitives/syntax.scm (defmacro, let, let*): Unquote uses of
 
129
        `@bind' in transformed code.
 
130
        (if): Unquote uses of `nil-cond' in transformed code.
 
131
 
 
132
        * internals/lambda.scm (transform-lambda): Unquote use of `@bind'
 
133
        in transformed code.
 
134
 
 
135
        * transform.scm (transformer-macro): Don't quote `list' in
 
136
        transformed code.
 
137
        (transform-application): Don't quote `@fop' in transformed code.
 
138
        (transformer): No need to treat `@bind' and `@fop' as special
 
139
        cases in input to the transformer.
 
140
 
 
141
2002-02-04  Neil Jerram  <neil@ossau.uklinux.net>
 
142
 
 
143
        * primitives/syntax.scm (parse-formals, transform-lambda,
 
144
        interactive-spec, set-not-subr!, transform-lambda/interactive):
 
145
        Move into internals/lambda.scm so that these can also be used
 
146
        by...
 
147
        
 
148
        * internals/fset.scm (elisp-apply): Use `eval' and 
 
149
        `transform-lambda/interactive' to turn a quoted lambda expression
 
150
        into a Scheme procedure.
 
151
 
 
152
        * transform.scm (m-quasiquote): Don't quote `quasiquote' in
 
153
        transformed code.
 
154
        (transformer): Transform '() to #nil.
 
155
 
 
156
2002-02-03  Neil Jerram  <neil@ossau.uklinux.net>
 
157
 
 
158
        * internals/Makefile.am (elisp_sources): Add lambda.scm.
 
159
 
 
160
        * internals/lambda.scm (lang): New file.
 
161
 
 
162
2002-02-01  Neil Jerram  <neil@ossau.uklinux.net>
 
163
 
 
164
        * transform.scm (transformer), primitives/syntax.scm (let*):
 
165
        Unquote uses of `begin' in transformed code.
 
166
 
 
167
2002-01-29  Neil Jerram  <neil@ossau.uklinux.net>
 
168
 
 
169
        * transform.scm (transform-1, transform-2, transform-3,
 
170
        transform-list): Removed (unused).
 
171
        
 
172
        * transform.scm, primitives/syntax.scm: Add commas everywhere
 
173
        before use of (guile) primitives in generated code, so that (lang
 
174
        elisp base) doesn't have to import bindings from (guile).
 
175
        
 
176
        * base.scm: Move use-modules expressions inside the define-module,
 
177
        and add #:pure so that we don't import bindings from (guile).
 
178
 
 
179
2002-01-25  Neil Jerram  <neil@ossau.uklinux.net>
 
180
 
 
181
        * transform.scm (transform-application): Preserve source
 
182
        properties of original elisp expression by using cons-source.
 
183
 
 
184
        * transform.scm: Don't handle special forms specially in the
 
185
        translator.  Instead, define them as macros in ...
 
186
        
 
187
        * primitives/syntax.scm: New file; special form definitions.
 
188
 
 
189
        * primitives/fns.scm (run-hooks): Rewritten correctly.
 
190
 
 
191
        * primitives/symprop.scm (symbol-value): Use `value'.
 
192
 
 
193
        * internals/set.scm (value): New function.
 
194
 
 
195
        * primitives/fns.scm: Use (lang elisp internals null), as null is
 
196
        no longer a primitive.  Change generated #f values to %nil.
 
197
 
 
198
        * internals/null.scm (null): Handle nil symbol.
 
199
 
 
200
        * primitives/lists.scm (memq, member, assq, assoc): Handle all
 
201
        possible nil values.
 
202
 
 
203
        * transform.scm (transformer): Translate `nil' and `t' to #nil and
 
204
        #t.
 
205
 
 
206
        * base.scm: Remove setting of 'language read-option.
 
207
 
 
208
2001-11-03  Neil Jerram  <neil@ossau.uklinux.net>
 
209
 
 
210
        * README (Resources): Fill in missing URLs.
 
211
 
 
212
2001-11-02  Neil Jerram  <neil@ossau.uklinux.net>
 
213
 
 
214
        * Makefile.am (elisp_sources): Added base.scm, example.el,
 
215
        interface.scm; removed emacs.scm.
 
216
 
 
217
        * README: Updated accordingly.
 
218
 
 
219
        * internals/load.scm (load): Avoid using `load-path' if the
 
220
        supplied file name begins with a slash.
 
221
        
 
222
        * internals/fset.scm: Support export of defuns, defmacros and
 
223
        defvars to a module specified by the fluid `elisp-export-module'.
 
224
        This allows us to automate the importing of Elisp definitions into
 
225
        Scheme.
 
226
        
 
227
        * example.el: New file: example code for `load-elisp-file'.
 
228
 
 
229
        * interface.scm: New file - mechanisms to exchange definitions
 
230
        between Scheme and Elisp.
 
231
 
 
232
        Following changes try to make the Elisp evaluation module less
 
233
        Emacs-dependent; in other words, so that it isn't necessary to try
 
234
        to load the whole Emacs environment before evaluating basic
 
235
        non-Emacs-specific Elisp code.
 
236
        
 
237
        * variables.scm, internals/evaluation.scm: Changed (lang elisp
 
238
        emacs) to (lang elisp base).
 
239
        
 
240
        * emacs.scm (lang): Removed.
 
241
 
 
242
        * base.scm (lang): New file (non-emacs-specific replacement for
 
243
        emacs.scm).
 
244
 
 
245
2001-10-28  Neil Jerram  <neil@ossau.uklinux.net>
 
246
 
 
247
        * primitives/symprop.scm (symbol-name): New primitive.
 
248
 
 
249
        * primitives/strings.scm (stringp): New primitive.
 
250
 
 
251
        * primitives/pure.scm (purify-flag): New variable.
 
252
 
 
253
        * primitives/numbers.scm (numberp): New primitive.
 
254
 
 
255
        * internals/fset.scm (fset): Set procedure and macro name
 
256
        properties usefully to match Elisp symbol names.  Also bind Elisp
 
257
        function definition variables to similarly named symbols in the
 
258
        (lang elisp variables) module.
 
259
 
 
260
        * transform.scm (transformer, m-unwind-protect): Added support for
 
261
        `unwind-protect'.
 
262
        (m-quasiquote): Use 'quasiquote rather than 'quote.
 
263
        (transform-lambda, m-defmacro): When no rest arguments, set the
 
264
        rest parameter to '() rather than #f.  It shouldn't make any
 
265
        difference, but it feels more right.
 
266
 
 
267
        * README: Enlarged description of current status.
 
268
 
 
269
        * Makefile.am (elisp_sources): Added variables.scm.
 
270
 
 
271
        * variables.scm: New file.
 
272
 
 
273
2001-10-26  Neil Jerram  <neil@ossau.uklinux.net>
 
274
 
 
275
        * buffers.scm, calling.scm: Removed.  These should have
 
276
        disappeared during the reorganization described below, but I
 
277
        missed them by mistake.
 
278
        
 
279
        * primitives/symprop.scm (set, boundp, symbol-value): Changed to
 
280
        use (module-xx the-elisp-module ...) rather than (local-xx ...).
 
281
        (symbolp): Accept either symbols or keywords.
 
282
        (set-default, default-boundp, default-value,
 
283
        local-variable-if-set-p): New.
 
284
 
 
285
        * primitives/match.scm (string-match, match-data): Store last
 
286
        match data in Emacs rather than Guile form, to simplify
 
287
        implementation of ...
 
288
        (set-match-data, store-match-data): New.
 
289
 
 
290
        * primitives/load.scm (autoload, current-load-list): New.  (But
 
291
        autoload is just stubbed, not properly implemented.)
 
292
 
 
293
        * primitives/lists.scm (nth, listp, consp, nconc): New.
 
294
 
 
295
        * primitives/fns.scm (byte-code-function-p, run-hooks): New.
 
296
 
 
297
        * transform.scm (transform-application, transformer-macro): New
 
298
        scheme for transforming procedure arguments while leaving macro
 
299
        args untransformed.  (See also associated change in libguile.)
 
300
        (m-defconst): Simplified, now uses m-setq.
 
301
 
 
302
        * Makefile.am: Changed so that it only deals with files directly
 
303
        in this directory; otherwise files don't install cleanly.
 
304
 
 
305
        * internals/Makefile.am, primitives/Makefile.am,
 
306
        internals/.cvsignore, primitives/.cvsignore: New files.
 
307
 
 
308
2001-10-26  Neil Jerram  <neil@ossau.uklinux.net>
 
309
 
 
310
        * transform.scm (transformer): New handling for (1) quasiquoting
 
311
        syntax like "(` ...)" as well as the more normal "` ..."; (2)
 
312
        `function'; (3) interactive specification in lambda body.
 
313
        Simplied handling for `setq'.
 
314
        (transform-inside-qq): Fixed to handle improper as well as proper
 
315
        lists.
 
316
        (transform-lambda/interactive): New; wraps transform-lambda to
 
317
        handle setting of various procedure properties.
 
318
        (transform-lambda, m-defmacro): Changed `args' and `num-args' to
 
319
        `%--args' and `%--num-args' in the hope of avoiding lexical
 
320
        vs. dynamic name clashes.
 
321
        (m-and): Use #f instead of '() where a condition fails.
 
322
 
 
323
        Plus big hierarchy reorganization, in which most of the previous
 
324
        occupants of lang/elisp moved to lang/elisp/primitives, with some
 
325
        internal processing being split out into lang/elisp/internals.
 
326
        The upshot looks like this:
 
327
 
 
328
        * internals/trace.scm, internals/set.scm, internals/load.scm,
 
329
        internals/fset.scm, internals/signal.scm, internals/time.scm,
 
330
        internals/format.scm, internals/null.scm,
 
331
        internals/evaluation.scm, primitives/buffers.scm,
 
332
        primitives/features.scm, primitives/format.scm,
 
333
        primitives/time.scm, primitives/guile.scm, primitives/keymaps.scm,
 
334
        primitives/lists.scm, primitives/load.scm, primitives/match.scm,
 
335
        primitives/numbers.scm, primitives/pure.scm, primitives/read.scm,
 
336
        primitives/signal.scm, primitives/strings.scm,
 
337
        primitives/symprop.scm, primitives/system.scm, primitives/fns.scm:
 
338
        New files.
 
339
 
 
340
        * features.scm, format.scm, fset.scm, guile.scm, keymaps.scm,
 
341
        lists.scm, load.scm, match.scm, numbers.scm, pure.scm, read.scm,
 
342
        signal.scm, strings.scm, symprop.scm, system.scm, time.scm,
 
343
        trace.scm: Removed files.
 
344
        
 
345
2001-10-23  Neil Jerram  <neil@ossau.uklinux.net>
 
346
 
 
347
        * match.scm (string-match): New implementation using new
 
348
        `make-emacs-regexp' primitive; old workaround implementation
 
349
        renamed to `string-match-workaround'.
 
350
 
 
351
2001-10-21  Neil Jerram  <neil@ossau.uklinux.net>
 
352
 
 
353
        * transform.scm (m-defun, m-defmacro, m-let, m-defvar,
 
354
        m-defconst): Use more selective tracing mechanism (provided by new
 
355
        file trace.scm).
 
356
        
 
357
        * symprop.scm (get, boundp), transform.scm (transform-lambda,
 
358
        m-defmacro): Remove unnecessary uses of nil-ify and t-ify.
 
359
        
 
360
        * match.scm (string-match): Workaround Guile/libc regex
 
361
        parenthesis bug.
 
362
 
 
363
        * emacs.scm: Move elisp primitive definitions into more specific
 
364
        files, so that emacs.scm contains only overall code.
 
365
 
 
366
        * Makefile.am: Added new files.
 
367
        
 
368
        * numbers.scm, trace.scm, time.scm, pure.scm, system.scm,
 
369
        read.scm, calling.scm, guile.scm: New files.
 
370
 
 
371
2001-10-20  Neil Jerram  <neil@ossau.uklinux.net>
 
372
 
 
373
        * Makefile.am (elisp_sources): Added match.scm and strings.scm.
 
374
 
 
375
        * match.scm, strings.scm: New files.
 
376
 
 
377
2001-10-19  Neil Jerram  <neil@ossau.uklinux.net>
 
378
 
 
379
        * transform.scm: Replace uses of `nil' by `#f' or `'()'.
 
380
 
 
381
        * Makefile.am (elisp_sources): Added lists.scm.
 
382
 
 
383
        * load.scm (the-elisp-module): Corrected (lang elisp emacs) module
 
384
        name.
 
385
 
 
386
        * lists.scm (lang): New file containing list-related primitives.
 
387
 
 
388
        * emacs.scm: Corrected module name.
 
389
 
 
390
2001-10-19  Neil Jerram  <neil@ossau.uklinux.net>
 
391
 
 
392
        Initial implementation of an Emacs Lisp translator, based on
 
393
        transformer code originally written by Mikael Djurfeldt.
 
394
        
 
395
        * Makefile.am, .cvsignore: New.
 
396
 
 
397
        * ChangeLog, README, buffers.scm, emacs.scm, features.scm,
 
398
        format.scm, fset.scm, keymaps.scm, load.scm, signal.scm,
 
399
        symprop.scm, transform.scm: New files.
 
400
        
 
401