Mikael Djurfeldt
067affe319
* eval.c (scm_copy_tree): Copy source properties if existent.
1998-11-10 14:17:24 +00:00
Mikael Djurfeldt
cb412265a7
* debug.c (scm_start_stack): Copy source when evaluating. (If we
...
don't, we may end up passing memoized source to a transformer.)
1998-11-10 14:16:55 +00:00
Mikael Djurfeldt
26e1985495
Removed last change. (Replaced by a better change.)
1998-11-10 07:58:32 +00:00
Mikael Djurfeldt
7a13c3ae7b
* stacks.c (read_frame): Bugfix: Removed lingering `else'
...
statement.
(read_frames): Use SCM_MACROEXPP.
1998-11-10 07:57:51 +00:00
Mikael Djurfeldt
e40a5fc8ce
* backtrace.c (get_applybody): Help function which lookups the
...
first body form of the apply closure.
(display_error_body): Prevent the source of the first form of the
apply closure from being printed in error messages.
1998-11-10 07:41:35 +00:00
Mikael Djurfeldt
29672a5c18
*** empty log message ***
1998-11-10 06:12:12 +00:00
Mikael Djurfeldt
6629eb1ca7
* stacks.c (read_frame): Bugfix: Removed lingering `else'
...
statement.
(read_frames): Use SCM_MACROEXPP.
1998-11-10 06:10:33 +00:00
Mikael Djurfeldt
7c3540523f
* eval.c (SCM_CEVAL): Use SCM_SET/CLEAR_MACROEXP.
1998-11-10 06:10:11 +00:00
Mikael Djurfeldt
77debe3c6b
* debug.h (SCM_SET_MACROEXP, SCM_CLEAR_MACROEXP, SCM_MACROEXPP):
...
Replaces SCM_MACROFRAME, SCM_MACROFRAMEP.
1998-11-10 06:09:55 +00:00
Mikael Djurfeldt
7c9398015e
* stacks.c (read_frames): Skip gsubr frames in backtraces. (They
...
don't contain interesting information since all arguments are
present in the frame which applies the compiled closure anyway.);
Skip the transformer application frames.
1998-11-09 16:46:08 +00:00
Mikael Djurfeldt
56977059e4
* print.c (scm_iprin1): Print gsubrs as primitives.
1998-11-09 15:52:29 +00:00
Mikael Djurfeldt
fc4c5795b4
*** empty log message ***
1998-11-09 14:16:21 +00:00
Mikael Djurfeldt
358785a62e
* readline.c, readline.h (scm_readline_options,
...
scm_readline_opts): Moved readline options here.
1998-11-09 14:15:30 +00:00
Mikael Djurfeldt
3f2f0599c3
* read.c, read.h (scm_read_options, scm_read_opts): Removed
...
readline options. They should reside in their own options array.
1998-11-09 14:14:49 +00:00
Mikael Djurfeldt
368bf056f9
* eval.c (SCM_CEVAL): Mark macro frames at `handle_a_macro' so
...
that we can identify these in a backtrace. (This change doesn't
introduce any significant speed penalty.)
* eval.c: Added note about `serial-map' using scm_map.
1998-11-09 14:13:31 +00:00
Mikael Djurfeldt
e28748e4f0
* debug.h (SCM_MACROFRAME, SCM_MACROFRAMEP): New frame type.
1998-11-09 14:13:06 +00:00
Mikael Djurfeldt
68d15e3ed4
*** empty log message ***
1998-11-06 18:16:45 +00:00
Mikael Djurfeldt
9fdba2fee5
* readline.c (scm_read_history, scm_write_history): Bugfix: Use
...
SCM_ROCHARS instead of SCM_CHARS.
1998-11-06 18:15:40 +00:00
Mikael Djurfeldt
d1c90db5d6
* ports.c (scm_unread_string): Bugfixes: Check for SCM_STRINGP,
...
not SCM_ROSTRINGP; use SCM_ROUCHARS instead of SCM_UCHARS.
1998-11-06 18:15:12 +00:00
Mikael Djurfeldt
44e0a162a2
* ports.h (SCM_CUC): #define as ~SCM_CRDY instead of 0x001fffffL.
...
This is quite important since the latter clears the
FPORT_READ_SAFE and FPORT_WRITE_SAFE flags causing flushes at
every single character read...
1998-11-05 16:02:55 +00:00
Mikael Djurfeldt
94b16acb85
Removed lingering declaration of removed function sloppy_mem_check.
1998-11-05 15:06:30 +00:00
Mikael Djurfeldt
9931765428
*** empty log message ***
1998-11-03 16:11:33 +00:00
Mikael Djurfeldt
77c25af7d1
* print.c (scm_iprin1): Removed suspect looking (and indeed
...
malevolent) semicolon after test for user supplied closure print
procedure. (Thanks to Telford Tendys.)
1998-11-03 16:09:29 +00:00
Mikael Djurfeldt
263a691f04
* options.c (scm_options, scm_init_options): GC-protect option
...
values of type SCM. (Thanks to Telford Tendys.)
1998-11-03 16:09:11 +00:00
Mikael Djurfeldt
d79fec7537
* list.c, list.h (scm_delq1_x, scm_delv1_x, scm_delete1_x): New
...
procedures: Same as scm_delq_x et al, but delete maximally one
element.
1998-11-03 16:08:53 +00:00
Mikael Djurfeldt
82dc9f574f
* list.c (scm_sloppy_memq): Removed sloppy_mem_check.
...
(scm_memq, scm_memv, scm_member): Do argument checking *before*
starting to search the list. Removed call to sloppy_mem_check.
* list.c, list.h (scm_delq1_x, scm_delv1_x, scm_delete1_x): New
procedures: Same as scm_delq_x et al, but delete maximally one
element.
1998-11-03 16:08:28 +00:00
Mikael Djurfeldt
83336ffd60
Removed some #if 0 which slipped through in previous change
1998-11-01 16:57:40 +00:00
Mikael Djurfeldt
d0b7bad785
* eval.c: Don't #define scm_lookupcar to scm_lookupcar1. Instead
...
make sure that there always is a "real" scm_lookupcar.
1998-11-01 04:40:33 +00:00
Mikael Djurfeldt
d1306c276b
Updated
1998-11-01 04:16:40 +00:00
Mikael Djurfeldt
9cb84fbb0c
*** empty log message ***
1998-10-31 16:42:33 +00:00
Mikael Djurfeldt
254de08949
* readline.c (read-history, write-history): New procedures.
1998-10-31 16:40:46 +00:00
Mikael Djurfeldt
ad382b2dcc
* read.c, read.h (history-length, history-file): New read options.
...
(scm_read_options): Stifle history to history length.
1998-10-31 16:40:15 +00:00
Mikael Djurfeldt
64921cdd76
* evalext.c (sequence->list): Fix
1998-10-31 14:18:07 +00:00
Mikael Djurfeldt
35c969658f
*** empty log message ***
1998-10-31 13:59:23 +00:00
Mikael Djurfeldt
ddeae7caff
* debug.c, print.c: Added #include "macros.h".
1998-10-31 13:57:13 +00:00
Mikael Djurfeldt
99027e3c78
* macros.c, macros.h: New files.
...
(procedure->syntax, procedure->macro, procedure->memoizing-macro,
macro?, macro-type, macro-name, macro-transformer): Moved from
eval.c
(scm_make_synt): Moved from eval.c
* Makefile.am: Added evalext.c, evalext.h, macros.c, macros.h.
1998-10-31 13:32:21 +00:00
Mikael Djurfeldt
40cf7e92b2
* evalext.c, evalext.h: New files. Contain non-R5RS things
...
having to do with evaluation.
* evalext.c (serial-map): New procedure: Version of `map' which
guarantees that the procedure is applied to the lists in serial
order.
(sequence->list): New syntax: Version of `begin' which returns a
list of the results of the body forms instead of the result of the
last body form.
(scm_definedp, scm_m_undefine): Moved from eval.c
* evalext.h (scm_m_sequence_to_list): Added declaration.
* Makefile.am: Added evalext.c, evalext.h, macros.c, macros.h.
1998-10-31 13:31:25 +00:00
Mikael Djurfeldt
4ecb84284b
*** empty log message ***
1998-10-31 13:09:27 +00:00
Mikael Djurfeldt
09e3ccd790
* Makefile.am: Added evalext.c, evalext.h, macros.c, macros.h.
1998-10-31 13:07:55 +00:00
Mikael Djurfeldt
c2c82fba2f
* procs.c, procs.h (procedure-documentation): Moved from eval.c.
1998-10-31 13:07:16 +00:00
Mikael Djurfeldt
27a69f9382
* init.c (scm_boot_guile_1): Added calls to scm_init_macros and
...
scm_init_evalext.
1998-10-31 13:06:08 +00:00
Mikael Djurfeldt
2a758f6f91
* eval.h (scm_macro_eval_x): Removed declaration.
...
* eval.c, eval.h (SCM_EVALIM): Renamed from EVALIM.
(SCM_XEVAL, SCM_XEVALCAR): Renamed from XEVAL, XEVALCAR.
1998-10-31 13:05:43 +00:00
Mikael Djurfeldt
6cb702daed
* eval.c (scm_s_expression, scm_s_test, scm_s_body,
...
scm_s_bindings, scm_s_variable, scm_s_clauses, scm_s_formals):
Renamed and made global.
* eval.c, eval.h (SCM_EVALIM): Renamed from EVALIM.
(SCM_XEVAL, SCM_XEVALCAR): Renamed from XEVAL, XEVALCAR.
* evalext.c (serial-map): New procedure: Version of `map' which
guarantees that the procedure is applied to the lists in serial
order.
(sequence->list): New syntax: Version of `begin' which returns a
list of the results of the body forms instead of the result of the
last body form.
(scm_definedp, scm_m_undefine): Moved from eval.c
* macros.c, macros.h: New files.
(procedure->syntax, procedure->macro, procedure->memoizing-macro,
macro?, macro-type, macro-name, macro-transformer): Moved from
eval.c
(scm_make_synt): Moved from eval.c
* procs.c, procs.h (procedure-documentation): Moved from eval.c.
1998-10-31 13:05:07 +00:00
Mikael Djurfeldt
41d3b325c7
Added #include "macros.h"
1998-10-31 13:04:12 +00:00
Mikael Djurfeldt
4d362308da
*** empty log message ***
1998-10-30 08:25:05 +00:00
Mikael Djurfeldt
e6a207b366
* ioext.c (scm_ftell): Use SCM_N_READY_CHARS to correct position.
1998-10-30 08:24:23 +00:00
Mikael Djurfeldt
64e764482e
* ports.c (scm_add_to_port_table, scm_remove_from_port_table):
...
Handle new fields.
(scm_generic_fgets), fports.c (local_fgets): Use a loop
to read unread characters. Use SCM_TRY_CLRDY instead of
SCM_CLRDY.
1998-10-30 08:24:07 +00:00
Mikael Djurfeldt
b8af68db88
* genio.c (scm_getc): Use SCM_TRY_CLRDY instead of SCM_CLRDY.
...
* genio.c, genio.h (scm_ungets): New function.
* genio.c (scm_puts): Removed mysterious TRANSCRIPT_SUPPORT code
sections.
1998-10-30 08:23:52 +00:00
Mikael Djurfeldt
327ff831a0
* genio.c, genio.h (scm_ungets): New function.
1998-10-30 08:23:33 +00:00
Mikael Djurfeldt
ee1e7e13b3
* ports.h, ports.c (scm_unread_string): New procedure.
...
(scm_grow_port_cbuf): New function.
* ports.c (scm_add_to_port_table, scm_remove_from_port_table):
Handle new fields.
(scm_generic_fgets), fports.c (local_fgets): Use a loop
to read unread characters. Use SCM_TRY_CLRDY instead of
SCM_CLRDY.
1998-10-30 08:23:13 +00:00