1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-02 13:00:26 +02:00
Commit graph

8602 commits

Author SHA1 Message Date
Jim Blandy
dc19d1d29a It's an "eval closure", not an "eval thunk." A thunk is a
function of no arguments.
* root.h (struct scm_root_state): Renamed
top_level_lookup_closure_var from top_level_lookup_thunk_var.
(scm_top_level_lookup_closure_var): Renamed from
scm_top_level_lookup_thunk_var.
* root.c (mark_root): Uses changed.
* gdbint.c (gdb_eval, gdb_binding): Uses changed.
* init.c (scm_start_stack): Uses changed.
* eval.c (scm_eval, scm_eval_x, scm_init_eval): Rename uses.
Change scheme-visible name to *top-level-lookup-closure* from
*top-level-lookup-thunk*.
1996-11-21 16:28:39 +00:00
Jim Blandy
4b28e0b88b Renamed to ChangeLog-scm from ChangeLog.scm, so it won't interfere with
my greps any more.
1996-11-21 16:03:02 +00:00
Jim Blandy
3763761c89 *** empty log message *** 1996-11-20 21:06:20 +00:00
Jim Blandy
ce4a361d99 * gc.c (scm_igc, scm_gc_mark): Round up the size of the stack we
pass to scm_mark_locations.  (Thanks to Aubrey Jaffer.)
1996-11-20 21:03:38 +00:00
Jim Blandy
8715b33106 *** empty log message *** 1996-11-10 20:48:17 +00:00
Jim Blandy
8f9a51ac66 *** empty log message *** 1996-11-10 20:46:46 +00:00
Jim Blandy
cf2d30f60f * gc.c (struct scm_heap_seg_data): Doc fixes.
* gc.c (scm_gc_sweep): Prepend each segment's free cells to its
freelist, rather than wiping out the old value.  (Thanks to Marius
Vollmer.)

* gc.c (which_seg, scm_map_free_list, scm_newcell_count,
scm_check_freelist, scm_debug_newcell): New functions and
variables, for debugging freelist problems.
* pairs.h (SCM_NEWCELL): New debugging version added.
* gc.h (scm_debug_newcell): Added extern declaration, used by
debugging version of SCM_NEWCELL.
1996-11-10 20:46:21 +00:00
Jim Blandy
88256b2e0e * gc.c (which_seg, scm_map_free_list, scm_newcell_count,
scm_check_freelist, scm_debug_newcell): New functions and
variables, for debugging freelist problems.
* pairs.h (SCM_NEWCELL): New debugging version added.
* gc.h (scm_debug_newcell): Added extern declaration, used by
debugging version of SCM_NEWCELL.
1996-11-10 20:46:11 +00:00
Jim Blandy
448a3bc269 spelling fix 1996-11-10 03:11:46 +00:00
Jim Blandy
8512dea604 *** empty log message *** 1996-11-10 00:15:36 +00:00
Jim Blandy
7471fb031f * fports.c (scm_stdio_to_port, scm_open_file): Set the port's
pointer to the stdio stream before calling scm_setbuf0, so the
latter will be able to retrieve it.  I'm surprised this didn't
segfault earlier.  (Thanks to Christopher Lee.)
1996-11-10 00:15:21 +00:00
Jim Blandy
3594582bd1 On some systems <libc.h> conflicts with <unistd.h>, and should not
be #included at all.
* aclocal.m4 (GUILE_HEADER_LIBC_WITH_UNISTD): New autoconf macro.
* configure.in: Call it.
* acconfig.h (LIBC_H_WITH_UNISTD_H): New CPP symbol.
* posix.c, filesys.c: Use its results to decide whether or not to
#include <libc.h>.
* configure, scmconfig.h.in: Rebuilt with autoconf and
autoheader.
1996-11-10 00:14:45 +00:00
Mikael Djurfeldt
23e89125a2 *** empty log message *** 1996-11-06 15:05:20 +00:00
Mikael Djurfeldt
97a307b982 * throw.c (scm_lazy_catch, scm_ithrow): Completed implementation
of `lazy-catch'.
1996-11-06 15:05:00 +00:00
Mikael Djurfeldt
7ad737b69b *** empty log message *** 1996-11-02 20:54:28 +00:00
Mikael Djurfeldt
f6f88e0d94 * * stacks.c, stacks.h (scm_make_stack): Now takes arbitrary
number of stack narrowing specifier pairs.  The first specifier in
	a pair controls inner border, the second the outer border.  A
	number means cut that number of frames, a procedure object means
	cut until that object is found in operator position in a frame.
1996-11-02 20:54:19 +00:00
Mikael Djurfeldt
308277cbb4 * root.c (cwdr): Bugfix. 1996-11-02 20:54:08 +00:00
Mikael Djurfeldt
ac74fc22fb * * read.c: Recording of positions disabled by default. 1996-11-02 20:54:03 +00:00
Mikael Djurfeldt
ecdb5eb2f1 * * procs.c (scm_closure_p): New function. 1996-11-02 20:53:58 +00:00
Mikael Djurfeldt
9ee5fce45d * * posix.c (scm_tmpnam): New function. 1996-11-02 20:53:53 +00:00
Mikael Djurfeldt
19a18b54db * * load.c, load.h (scm_read_and_eval_x): New function. 1996-11-02 20:53:47 +00:00
Mikael Djurfeldt
b35d06a4bb * load.c: Added #include "throw.h".
*	* load.c, load.h (scm_read_and_eval_x): New function.
1996-11-02 20:53:42 +00:00
Mikael Djurfeldt
11f77bfcc9 * * eval.c: Renamed debug option "deval" to "debug". 1996-11-02 20:53:32 +00:00
Mikael Djurfeldt
44b5e41db4 * * debug.h: Changed semantics of debug option "backtrace". This
option now only indicates whether we want automatic backtrace at
	an error.
1996-11-02 20:53:24 +00:00
Mikael Djurfeldt
e38ecb055c * debug.c (scm_m_start_stack): Bugfix: Use SCM_ECONSP instead of
SCM_CONSP since this is a macro!; Set vframe.prev to
scm_last_debug_frame instead of 0.  In this way we can look
"above" the virtual start stack frame if we wish.
(scm_debug_hang): New function: Useful for debugging Guile in
certain tricky situations.  Will probably be removed later...
1996-11-02 20:53:18 +00:00
Mikael Djurfeldt
e412e180d4 * _scm.h: Added #ifndef around definition of macros min and max. 1996-11-02 20:52:58 +00:00
Mikael Djurfeldt
25d3ee9d80 * __scm.h: Added hooks for threads to plugin to in ints protection
macros: SCM_THREAD_DEFER, SCM_THREAD_ALLOW, SCM_THREAD_REDEFER,
 	SCM_THREAD_ALLOW_1, SCM_THREAD_ALLOW_2.  Motivation: We don't want
 	the main code in these macros duplicated and spread over multiple
 	files. Renamed SCM_THREADS_SWITCHING_CODE ->
 	SCM_THREAD_SWITCHING_CODE.
1996-11-02 20:52:39 +00:00
Mikael Djurfeldt
fd7932d3a6 * libguile.h: #include "libguile/libpath.h" 1996-10-30 23:36:51 +00:00
Mikael Djurfeldt
5d09ff4ea7 * ports.c: #include "filesys.h"
(scm_char_ready_p): input_waiting renamed and moved to filesys.c.
1996-10-30 23:35:06 +00:00
Mikael Djurfeldt
3feedb0011 * load.c, load.h (scm_sys_package_data_dir): New function. 1996-10-30 23:34:33 +00:00
Mikael Djurfeldt
66b47b6c79 * filesys.c, filesys.h (scm_input_waiting_p): Moved from ports.c.
Motivation: This is system specific code which is related to file
 	I/O.  It also may use select.  Added code by Gary Houston to
 	detect presence of character in stdio buffers.
1996-10-30 23:31:11 +00:00
Mikael Djurfeldt
7adf98eeb4 * Makefile.in (libpath.h): Renamed definition of: LIBRARY_PATH -->
SCM_LIBRARY_DIR; Added definitions of: SCM_PKGDATA_DIR, SCM_SITE_DIR;
Install libpath.h among the other include files.
1996-10-30 23:30:20 +00:00
Mikael Djurfeldt
11835a09f3 *** empty log message *** 1996-10-30 23:27:17 +00:00
Mikael Djurfeldt
3119346c3f * stacks.h: Bugfix: Don't use tail-array length field as stack
length field!  This screwed up GC.
1996-10-30 00:16:45 +00:00
Jim Blandy
3027db9d22 *** empty log message *** 1996-10-29 20:53:19 +00:00
Jim Blandy
4e9d47f6b1 * socket.c: Use K&R style declaration for 'close'; the GNU coding
standards suggest against providing prototypes for system
functions.  Thanks to Greg Troxel.
1996-10-29 20:52:40 +00:00
Jim Blandy
5b4215a8b5 * snarf.h: New file.
* guile-snarf.sh: New file.
* Makefile.in (inner_h_files): Added snarf.h
(ancillary, install, uninstall, distclean): Added actions for
guile-snarf.
(.c.x): Use guile-snarf.
(guile-snarf): New rule, to produce guile-snarf from guile-snarf.sh.
(gen_c_files): Note that these depend on guile-snarf.
* _scm.h: Removed the snarfing macros (SCM_PROC, etc). They are
now in "snarf.h".  Added #include "snarf.h" to get them.
* configure.in: Added guile-snarf to AC_OUTPUT
* libguile.h: Added #include "snarf.h".
(Patches applied and tweaked by Jim Blandy.)
1996-10-29 20:49:56 +00:00
Jim Blandy
f193864b10 *** empty log message *** 1996-10-29 03:08:16 +00:00
Jim Blandy
bebdc83a21 * * numbers.c (scm_integer_p): Renamed from scm_int_p; change its
scheme name from "int?" to "integer?".  It seems to do the job.
	* numbers.h: Rename prototype too.
	* scmhob.h (intp): Change definition to refer to scm_integer_p.  I
	hope this is right.
1996-10-29 03:08:03 +00:00
Jim Blandy
f693191c2a * * numbers.c (scm_integer_p): Renamed from scm_int_p; change its
scheme name from "int?" to "integer?".  It seems to do the job.
	* numbers.h: Rename prototype too.
	* scmhob.h (intp): Change definition to refer to scm_integer_p.  I
	hope this is right.

*	* numbers.c (scm_less_p, scm_gr_p, scm_leq_p, scm_geq_p,
	scm_num_eq_p): Rename these according to R4RS conventions: call
	them <, <=, =, >, and >=, not <?, <=?, =?, >?, and >=?.  En route
	to making libguile R4RS compliant without ice-9...
1996-10-29 03:07:53 +00:00
Jim Blandy
cd07a09755 * strports.c (scm_eval_0str): New function.
#include "read.h", to get prototype for scm_read.
* Makefile.in (strports.o): Update dependencies.
* strports.h: New prototype.
1996-10-29 03:06:26 +00:00
Jim Blandy
99f97bfe7e *** empty log message *** 1996-10-28 23:06:04 +00:00
Jim Blandy
26544b963b * * load.c (scm_sys_search_load_path): Search for files under all
extensions listed in the %load-extensions variable.  If FILENAME
	is absolute, return it unchanged, without searching the load path.
*	(scm_loc_load_extensions): New variable, pointing to
	%load-extensions' value cell.
	(scm_init_load): Initialize it, and the value it points to.
	(scm_primitive_load_path): Improve error reporting.

*	* load.c (scm_loc_load_hook): New variable, pointing to value cell
	of new Scheme variable %load-hook.
	(scm_primitive_load): Apply %load-hook to filename.
1996-10-28 23:05:37 +00:00
Gary Houston
f93ddd3985 * configure.in: add tests for figuring out whether buffered data
is available in a FILE structure, which is needed by char-ready.

* acconfig.h: define FILE_CNT_FIELD, FILE_CNT_GPTR and
FILE_CNT_READPTR.

* simpos.c (scm_getenv): renamed from scm_sys_getenv.  Throw
exceptions using misc_error instead of syserror.  It seems a bit
odd to throw an exception if a string can't be found in the
environment, but it's consistent with open-file, stat etc.
(simpos.h): remove sys_ from getenv.

* posix.c (scm_putenv): renamed from scm_sys_putenv.  If an error
occurs, throw an error instead of returning errno.  Return value
is now unspecified.
(numerous in posix.c and posix.h): removed superfluous sys_ from names.
1996-10-28 09:44:07 +00:00
Gary Houston
ae5253c589 * filesys.c (scm_stat2scm): derive file type and permissions from
the stat mode and append them to the returned vector.
There isn't much overhead in doing this and it avoids the need to
work with S_IRUSR et al. in Scheme.
Define symbols scm_sym_regular etc.
(scm_init_filesys): don't intern S_IRUSR etc.
1996-10-27 23:25:47 +00:00
Gary Houston
523f526658 * load.c: change s_try_load and s_try_load_path to s_primitive_load
and s_primitive_load_path.

* eval.c, load.c, error.c (scm_wta): use scm_misc_error.

* error.h: don't declare error symbols.  prototype for scm_misc_error.

* stackchk.c (scm_stack_overflow_key): defined here instead of in
error.c.

* error.c: use SCM_SYMBOL to set up error keys.
scm_misc_error: new procedure.
1996-10-27 02:38:39 +00:00
Jim Blandy
3065a62a4c *** empty log message *** 1996-10-25 08:40:27 +00:00
Jim Blandy
f9c68a472c * read.c (scm_lreadr): Recognize SCSH-style block comments; text
between `#!' and `!#' is ignored.
(skip_scsh_block_comment): New function.
1996-10-25 08:30:26 +00:00
Jim Blandy
f29de79022 * feature.c (scm_set_program_arguments): New argument, FIRST.
* feature.h: Update prototype.
* init.c (scm_boot_guile_1): Pass new argument to
scm_set_program_arguments.
1996-10-25 08:30:06 +00:00
Jim Blandy
b6edbab202 *** empty log message *** 1996-10-23 02:15:20 +00:00