Mikael Djurfeldt
bdc88419bd
* procs.c: #include "objects.h"
...
(scm_procedure_p): Return #t also on structs which are operators.
1998-11-21 17:01:48 +00:00
Mikael Djurfeldt
af3645c52b
* objects.c (scm_init_objects): Renamed <standard-metaclass>,
...
<operator-metaclass> and <entity-class> to <standard-class>,
<operator-class> and <entity> in order to conform with STKlos
naming conventions.
1998-11-21 17:01:33 +00:00
Mikael Djurfeldt
9b07e212d5
* eval.c (SCM_CEVAL): Jump to badfun if trying to apply a struct
...
which isn't an operator.
(SCM_APPLY): Ditto, but jump to badproc.
1998-11-21 17:00:44 +00:00
Mikael Djurfeldt
b325a6c8ac
* evalext.c (scm_definedp): Removed check for isyms; Added a
...
second optional argument: It is now possible to supply an
evaluation environment in which to look for the symbol.
1998-11-20 17:14:41 +00:00
Mikael Djurfeldt
aa00bd1e54
* eval.c (SCM_CEVAL): Allow structs implanted in code.
...
Previously, structs implanted in code were interpreted as forms
the operator of which was a gloc. We solve this by checking for
the zero in the emulated vcell in the struct vtable. Since
implanted structs always will look like forms with a gloc
operator, execution will only be slowed down by maximally one
extra test-and-branch per application.
1998-11-20 17:14:07 +00:00
Mikael Djurfeldt
b322f09ab8
* coop.c (coop_condition_variable_wait): Removed
...
(coop_condition_variable_wait_mutex): Folded logic of
coop_mutex_unlock into coop_condition_variable_wait_mutex to
prevent condvar signal lossage. Previously, another thread could
start to run after unlocking the mutex but before putting the
current thread on the wait queue. If that thread then would
signal the first, the signal would be lost. (Thanks to Christian
Lynbech.)
1998-11-19 08:15:22 +00:00
Mikael Djurfeldt
3b2ee8bcdf
* readline.c (scm_init_readline): Set
...
rl_basic_word_break_characters. (Thanks to Ian Grant.)
1998-11-19 04:48:50 +00:00
Mikael Djurfeldt
224822be69
* eval.c (SCM_CEVAL): Added missing case for cclo. (Thanks to
...
Christian Lynbech.)
1998-11-17 08:03:18 +00:00
Mikael Djurfeldt
036737fce8
* objects.c (scm_i_make_class_object): Renamed from
...
make_class_object; exported; error checking moved to
scm_make_class_object and scm_make_subclass_object.
(scm_make_class_object, scm_make_subclass_object): Use
scm_i_make_class_object.
(scm_make_subclass_object): Let the subclass have same metaclass
as the superclass.
1998-11-15 16:16:06 +00:00
Mikael Djurfeldt
a6e350ddef
* debug.c (scm_debug_options): Bugfix: Set the value of
...
scm_stack_checking_enabled_p after setting debug options;
#include "stackchk.h". (Thanks to Richard Polton.)
1998-11-13 15:58:00 +00:00
Radey Shouman
9879d0f19f
*** empty log message ***
1998-11-12 22:52:45 +00:00
Radey Shouman
467b7f18a2
(scm_array_contents): removed unnecessary test for 0 base.
1998-11-12 22:47:18 +00:00
Mikael Djurfeldt
88be72acb3
* evalext.c, evalext.h (scm_m_sequence_to_list): Removed.
...
Replaced by macro `collect' in boot-9.scm.
1998-11-12 16:00:41 +00:00
Mikael Djurfeldt
ad3ff75be8
*** empty log message ***
1998-11-10 14:18:42 +00:00
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