1 |
|
2002-02-08 Neil Jerram <neil@ossau.uklinux.net> |
2 |
|
|
3 |
|
* STATUS: New file. |
4 |
|
|
5 |
|
* README: Updated. |
6 |
|
|
7 |
|
* interface.scm (translate-elisp): New exported procedure. |
8 |
|
(elisp-function): Symbol var is `obj', not `symbol'. |
9 |
|
|
10 |
|
* internals/lambda.scm, primitives/fns.scm: Fix confusion between |
11 |
|
interactive-spec and interactive-specification. |
12 |
|
|
13 |
|
* internals/lambda.scm (transform-lambda), primitives/syntax.scm |
14 |
|
(defmacro): Bind unspecified optional and rest arguments to #nil, |
15 |
|
not #f. |
16 |
|
|
17 |
|
* internals/null.scm (->nil, lambda->nil): New, exported. |
18 |
|
(null): Use ->nil. |
19 |
|
|
20 |
|
* primitives/features.scm (featurep), primitives/fns.scm |
21 |
|
(fboundp, subrp): Use ->nil. |
22 |
|
|
23 |
|
* internals/lists.scm (cons, setcdr, memq, member, assq, assoc): |
24 |
|
Simplified. |
25 |
|
(car, cdr): Return #nil rather than #f. |
26 |
|
|
27 |
|
* primitives/load.scm (current-load-list), primitives/pure.scm |
28 |
|
(purify-flag): Set to #nil, not #f. |
29 |
|
|
30 |
|
* primitives/match.scm (string-match): Return #nil rather than #f. |
31 |
|
|
32 |
|
* primitives/numbers.scm (integerp, numberp), |
33 |
|
primitives/strings.scm (string-lessp, stringp): Use lambda->nil. |
34 |
|
|
35 |
|
* primitives/symprop.scm (boundp): Use ->nil. |
36 |
|
(symbolp, local-variable-if-set-p): Return #nil rather than #f. |
37 |
|
|
38 |
|
* primitives/syntax.scm (prog1, prog2): Mangle variable names |
39 |
|
further to lessen possibility of conflicts. |
40 |
|
(if, and, or, cond): Return #nil rather than #f. |
41 |
|
(cond): Return #t rather than t (which is undefined). |
42 |
|
(let, let*): Bind uninitialized variables to #nil, not #f. |
43 |
|
|
44 |
|
* transform.scm: Resolve inconsistency in usage of `map', and add |
45 |
|
an explanatory note. Also cleaned up use of subsidiary |
46 |
|
transformation functions. Also use cons-source wherever possible. |
47 |
|
(transform-datum, transform-quote): New. |
48 |
|
(transform-quasiquote): Renamed from `transform-inside-qq'. |
49 |
|
(transform-application): Apply `transform-quote' to application |
50 |
|
args. |
51 |
|
(cars->nil): Removed. |
52 |
|
|
53 |
|
* internals/null.scm (null), primitives/lists.scm (cons, car, cdr, |
54 |
|
setcdr, memq, member, assq, assoc, nth): Update to take into |
55 |
|
account new libguile support for Elisp nil value. |
56 |
|
|
57 |
|
2002-02-06 Neil Jerram <neil@ossau.uklinux.net> |
58 |
|
|
59 |
|
* example.el (time): New macro, for performance measurement. |
60 |
|
Accompanying comment compares results for Guile and Emacs. |
61 |
|
|
62 |
|
* transform.scm (scheme): New macro. |
63 |
|
(transformer): New implementation of `scheme' escape that doesn't |
64 |
|
rely on (lang elisp base) importing Guile bindings. |
65 |
|
|
66 |
|
* base.scm: No longer import anything from (guile). |
67 |
|
(load-emacs): Add scheme form to ensure that keywords |
68 |
|
read option is set correctly. |
69 |
|
|
70 |
|
* primitives/syntax.scm (defmacro, let, let*): Unquote uses of |
71 |
|
`@bind' in transformed code. |
72 |
|
(if): Unquote uses of `nil-cond' in transformed code. |
73 |
|
|
74 |
|
* internals/lambda.scm (transform-lambda): Unquote use of `@bind' |
75 |
|
in transformed code. |
76 |
|
|
77 |
|
* transform.scm (transformer-macro): Don't quote `list' in |
78 |
|
transformed code. |
79 |
|
(transform-application): Don't quote `@fop' in transformed code. |
80 |
|
(transformer): No need to treat `@bind' and `@fop' as special |
81 |
|
cases in input to the transformer. |
82 |
|
|
83 |
2002-02-04 Neil Jerram <neil@ossau.uklinux.net> |
2002-02-04 Neil Jerram <neil@ossau.uklinux.net> |
84 |
|
|
85 |
* primitives/syntax.scm (parse-formals, transform-lambda, |
* primitives/syntax.scm (parse-formals, transform-lambda, |