diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2011-12-07 16:30:06 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2011-12-07 16:30:06 -0800 |
commit | 01b5b93cdf4cfb0ba14178f22eb0b1143ef5704f (patch) | |
tree | 444ebb37fce80e76df1f2e663996b7fdb71d1de7 /ChangeLog | |
parent | 79781ded91b29fbdc406d460e466c5ffb06a1454 (diff) | |
download | txr-01b5b93cdf4cfb0ba14178f22eb0b1143ef5704f.tar.gz txr-01b5b93cdf4cfb0ba14178f22eb0b1143ef5704f.tar.bz2 txr-01b5b93cdf4cfb0ba14178f22eb0b1143ef5704f.zip |
* debug.c (debug): Fix regression: repeat last command by hitting
Enter stopped working. This was broken by recent bugfixes in the
string splitting functions, which introduced a semantics change.
* eval.c (flip_s, vecref_s): New symbol variables.
(op_modplace): New places (vecref ...) and (flip ...). Bugfix: dec
operator was incrementing.
(expand_place): Handle vecref and flip. Bugfix: pop has no
third argument and so is now handled by the same case as flip.
Bugfix: if a modify form has no third argument, then do not
resynthesize it with a nil third argument.
(eval_init): Initialize new symbol variables.
Register new flip operator. Register new list_vectory function
as intrinsic.
* lib.c (rplacd): When modifying the cdr field of a lazy cons,
then lapse the lazy function to nil! This is needed by user-defined
lazy conses, and it makes sense to do it this way rather than
put in some explicit interface.
(list_vector): New function.
* lib.h (list_vector): Declared.
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 25 |
1 files changed, 25 insertions, 0 deletions
@@ -1,5 +1,30 @@ 2011-12-07 Kaz Kylheku <kaz@kylheku.com> + * debug.c (debug): Fix regression: repeat last command by hitting + Enter stopped working. This was broken by recent bugfixes in the + string splitting functions, which introduced a semantics change. + + * eval.c (flip_s, vecref_s): New symbol variables. + (op_modplace): New places (vecref ...) and (flip ...). Bugfix: dec + operator was incrementing. + (expand_place): Handle vecref and flip. Bugfix: pop has no + third argument and so is now handled by the same case as flip. + Bugfix: if a modify form has no third argument, then do not + resynthesize it with a nil third argument. + (eval_init): Initialize new symbol variables. + Register new flip operator. Register new list_vectory function + as intrinsic. + + * lib.c (rplacd): When modifying the cdr field of a lazy cons, + then lapse the lazy function to nil! This is needed by user-defined + lazy conses, and it makes sense to do it this way rather than + put in some explicit interface. + (list_vector): New function. + + * lib.h (list_vector): Declared. + +2011-12-07 Kaz Kylheku <kaz@kylheku.com> + * eval.c (lookup_var, lookup_fun): Reversing assoc arguments. (eval_init): New intrinsics. |