bpt/guile.git
21 years agoAuto docstring updates, including soft port enhancement.
Neil Jerram [Sat, 19 Oct 2002 16:33:25 +0000 (16:33 +0000)]
Auto docstring updates, including soft port enhancement.

21 years ago* evalext.h, evalext.c (scm_definedp, scm_defined_p): Renamed
Dirk Herrmann [Sat, 19 Oct 2002 09:07:23 +0000 (09:07 +0000)]
* evalext.h, evalext.c (scm_definedp, scm_defined_p):  Renamed
scm_definedp to scm_defined_p and deprecated scm_definedp.

21 years ago* async.h, async.c (scm_system_async): Fixed deprecation to work
Dirk Herrmann [Sat, 19 Oct 2002 08:22:50 +0000 (08:22 +0000)]
* async.h, async.c (scm_system_async):  Fixed deprecation to work
correctly when deprecated features are excluded.

21 years agoAdded blurb about "null" threads.
Marius Vollmer [Wed, 16 Oct 2002 16:36:29 +0000 (16:36 +0000)]
Added blurb about "null" threads.

21 years ago*** empty log message ***
Marius Vollmer [Wed, 16 Oct 2002 16:33:12 +0000 (16:33 +0000)]
*** empty log message ***

21 years agoShuffled around and extended the thread configuration code to allow
Marius Vollmer [Wed, 16 Oct 2002 16:32:28 +0000 (16:32 +0000)]
Shuffled around and extended the thread configuration code to allow
the "null" thread package to be selected.  Define USE_NULL_THREADS in
that case.

21 years ago(scm_system_async_mark_for_thread): Validate thread argument.
Marius Vollmer [Wed, 16 Oct 2002 16:27:46 +0000 (16:27 +0000)]
(scm_system_async_mark_for_thread): Validate thread argument.

21 years agoIt's scm_t_cond, not scm_t_condvar.
Marius Vollmer [Wed, 16 Oct 2002 16:25:45 +0000 (16:25 +0000)]
It's scm_t_cond, not scm_t_condvar.

21 years ago(scm_t_cond): Renamed from scm_t_condvar, which was the wrong name.
Marius Vollmer [Wed, 16 Oct 2002 16:10:40 +0000 (16:10 +0000)]
(scm_t_cond): Renamed from scm_t_condvar, which was the wrong name.

21 years ago(scm_i_thread_root): Do not validate argument.
Marius Vollmer [Wed, 16 Oct 2002 16:09:22 +0000 (16:09 +0000)]
(scm_i_thread_root): Do not validate argument.

21 years ago(scm_init_feature): Don't add 'threads' for USE_NULL_THREADS.
Marius Vollmer [Wed, 16 Oct 2002 16:08:03 +0000 (16:08 +0000)]
(scm_init_feature): Don't add 'threads' for USE_NULL_THREADS.

21 years ago(scm_cell, scm_double_cell): Also allow USE_NULL_THREADS to not
Marius Vollmer [Wed, 16 Oct 2002 16:03:44 +0000 (16:03 +0000)]
(scm_cell, scm_double_cell): Also allow USE_NULL_THREADS to not
protect the slot initializers.

21 years ago(scm_sigaction_for_thread): It's "USE_THREADS" not "USE_THREAD".
Marius Vollmer [Wed, 16 Oct 2002 16:01:22 +0000 (16:01 +0000)]
(scm_sigaction_for_thread): It's "USE_THREADS" not "USE_THREAD".

21 years ago(noinst_HEADERS): Added null-threads.c.
Marius Vollmer [Wed, 16 Oct 2002 15:59:37 +0000 (15:59 +0000)]
(noinst_HEADERS): Added null-threads.c.
(modinclude_HEADERS): Added null-threads.h.

21 years ago* threads.h: Include null-threads.h when !USE_COOP_THREADS.
Marius Vollmer [Wed, 16 Oct 2002 15:57:13 +0000 (15:57 +0000)]
* threads.h: Include null-threads.h when !USE_COOP_THREADS.
* threads.c: Include null-threads.c when !USE_COOP_THREADS.
(scm_init_threads): Use generic type names scm_t_mutex and
scm_t_coop instead of coop_m and coop_t.

21 years agoNew files.
Marius Vollmer [Wed, 16 Oct 2002 15:54:23 +0000 (15:54 +0000)]
New files.

21 years ago... but not for guile-procedures.texi since that is created in the build dir.
Marius Vollmer [Tue, 15 Oct 2002 12:06:14 +0000 (12:06 +0000)]
... but not for guile-procedures.texi since that is created in the build dir.

21 years agoUpdate to last change: include $(srcdir)/ in replaced $< constructs.
Marius Vollmer [Tue, 15 Oct 2002 10:36:42 +0000 (10:36 +0000)]
Update to last change: include $(srcdir)/ in replaced $< constructs.

21 years ago*** empty log message ***
Marius Vollmer [Mon, 14 Oct 2002 22:55:24 +0000 (22:55 +0000)]
*** empty log message ***

21 years agoReplaced "$<" in non-pattern rules with its value. This is to support
Marius Vollmer [Mon, 14 Oct 2002 22:54:50 +0000 (22:54 +0000)]
Replaced "$<" in non-pattern rules with its value.  This is to support
makes that know about "$<" only in pattern rules, like Sun's make.

21 years ago*** empty log message ***
Marius Vollmer [Mon, 14 Oct 2002 21:47:47 +0000 (21:47 +0000)]
*** empty log message ***

21 years ago(Whirlwind Tour): Added pointer to examples directory.
Marius Vollmer [Mon, 14 Oct 2002 21:47:40 +0000 (21:47 +0000)]
(Whirlwind Tour): Added pointer to examples directory.

21 years ago*** empty log message ***
Marius Vollmer [Mon, 14 Oct 2002 10:48:12 +0000 (10:48 +0000)]
*** empty log message ***

21 years ago(build-link): Include "-lguile-ltdl" in link flags.
Marius Vollmer [Mon, 14 Oct 2002 10:47:48 +0000 (10:47 +0000)]
(build-link): Include "-lguile-ltdl" in link flags.

21 years ago* autogen.sh (ac_version): try automake 1.7 too.
Gary Houston [Sun, 13 Oct 2002 22:20:46 +0000 (22:20 +0000)]
* autogen.sh (ac_version): try automake 1.7 too.

21 years ago*** empty log message ***
Marius Vollmer [Sun, 13 Oct 2002 18:25:29 +0000 (18:25 +0000)]
*** empty log message ***

21 years ago(libpath.h): Fixed typo in top_srcdir_absolute substitution. Thanks
Marius Vollmer [Sun, 13 Oct 2002 18:24:59 +0000 (18:24 +0000)]
(libpath.h): Fixed typo in top_srcdir_absolute substitution.  Thanks
to David Allouche!

21 years ago* evalext.h: Replaced SCM_DEBUG_DEPRECATED with !SCM_ENABLE_DEPRECATED.
Dirk Herrmann [Sun, 13 Oct 2002 11:02:58 +0000 (11:02 +0000)]
* evalext.h:  Replaced SCM_DEBUG_DEPRECATED with !SCM_ENABLE_DEPRECATED.

21 years ago*** empty log message ***
Marius Vollmer [Fri, 11 Oct 2002 13:07:43 +0000 (13:07 +0000)]
*** empty log message ***

21 years ago* upstream/Makefile.am (ltdl.h.diff, ltdl.c.diff): Look for
Marius Vollmer [Fri, 11 Oct 2002 13:07:14 +0000 (13:07 +0000)]
* upstream/Makefile.am (ltdl.h.diff, ltdl.c.diff): Look for
raw-ltdl.h and raw-ltdl.c in "$(srcdir)/..".  This is needed for
VPATH builds.

21 years ago(INCLUDES): Also look for includes in "." and
Marius Vollmer [Fri, 11 Oct 2002 13:05:43 +0000 (13:05 +0000)]
(INCLUDES): Also look for includes in "." and
"$(srcdir)".  This is needed for VPATH builds.
(EXTRA_DIST): Also distribute EXTRA_HEADERS.

21 years ago* async.c (s_scm_system_async_mark_for_thread): Only call
Marius Vollmer [Fri, 11 Oct 2002 13:02:50 +0000 (13:02 +0000)]
* async.c (s_scm_system_async_mark_for_thread): Only call
scm_i_thread_root when USE_THREADS is defined.  Use scm_root
otherwise.

* scmsigs.c (take_signal): Only call scm_i_thread_root when
USE_THREADS is defined.  Use scm_root otherwise.
(scm_sigaction_for_thread): Ignore THREAD argument when
USE_THREADS is not defined.  Also, move THREAD argument defaulting
out of HAVE_SIGACTION section, which was a bug.

21 years ago*** empty log message ***
Marius Vollmer [Thu, 10 Oct 2002 18:11:20 +0000 (18:11 +0000)]
*** empty log message ***

21 years ago(scm_sigaction_for_thread): Store original handler in signal_handlers,
Marius Vollmer [Thu, 10 Oct 2002 18:11:06 +0000 (18:11 +0000)]
(scm_sigaction_for_thread): Store original handler in signal_handlers,
not the closure that is used as the async.  The closure is stored in
signal_handler_cells, as previously.

21 years ago*** empty log message ***
Marius Vollmer [Wed, 9 Oct 2002 22:49:00 +0000 (22:49 +0000)]
*** empty log message ***

21 years ago(System Asyncs): Updated.
Marius Vollmer [Wed, 9 Oct 2002 22:48:30 +0000 (22:48 +0000)]
(System Asyncs): Updated.

21 years ago(top-repl): Use 2 as the limit when saving the stack.
Marius Vollmer [Wed, 9 Oct 2002 22:47:34 +0000 (22:47 +0000)]
(top-repl): Use 2 as the limit when saving the stack.
(error-catching-loop): use call-with-blocked-asyncs and
call-with-unblocked-asyncs instead of mask-signals and unmask-signals.

21 years ago(SCM_ASYNC_TICK): Do without the scm_active_asyncs abbrev.
Marius Vollmer [Wed, 9 Oct 2002 22:45:07 +0000 (22:45 +0000)]
(SCM_ASYNC_TICK): Do without the scm_active_asyncs abbrev.

21 years ago* async.h (scm_call_with_blocked_asyncs,
Marius Vollmer [Wed, 9 Oct 2002 22:44:02 +0000 (22:44 +0000)]
* async.h (scm_call_with_blocked_asyncs,
scm_call_with_unblocked_asyncs, scm_c_call_with_blocked_asyncs,
scm_c_call_with_unblocked_asyncs): New prototypes.
(scm_mask_signals, scm_unmask_signals): Deprecated.
(scm_mask_ints): Turned into a macro.

* async.c (scm_mask_ints): Removed.
(scm_run_asyncs): Do not set scm_mask_ints while running an async.
this should not be necessary.
(scm_async_click): Test block_asyncs instead of scm_mask_ints.
(scm_mask_signals, scm_unmask_signals): Deprecated.  Emit
deprecation warning and check for errornous use.  Set block_asyncs
instead of scm_mask_ints.
(increase_block, decrease_block, scm_call_with_blocked_asyncs,
scm_call_with_unblocked_asyncs, scm_c_call_with_blocked_asyncs,
scm_c_call_with_unblocked_asyncs): New.

21 years ago* root.h (scm_root_state): Added 'block_async' slot.
Marius Vollmer [Wed, 9 Oct 2002 22:37:29 +0000 (22:37 +0000)]
* root.h (scm_root_state): Added 'block_async' slot.
(scm_active_asyncs): Removed abbrev.
* root.c (scm_make_root): Initialize 'block_asyncs' slot.

21 years ago(scm_compile_shell_switches): Do not set scm_mask_ints. Asyncs are
Marius Vollmer [Wed, 9 Oct 2002 22:26:37 +0000 (22:26 +0000)]
(scm_compile_shell_switches): Do not set scm_mask_ints.  Asyncs are
enabled by default.

21 years ago* Makefile.am (srfiinclude_HEADERS, srfiincludedir): install the
Rob Browning [Wed, 9 Oct 2002 21:56:00 +0000 (21:56 +0000)]
* Makefile.am (srfiinclude_HEADERS, srfiincludedir): install the
srfi headers into guile/srfi/.

21 years ago* upstream/Makefile.am (ltdl.h.diff): remove
Rob Browning [Wed, 9 Oct 2002 21:16:31 +0000 (21:16 +0000)]
* upstream/Makefile.am (ltdl.h.diff): remove
SCM_INSERTED_DLSYMLIST_STRUCT_DECL during diff computation.
(ltdl.c.diff): remove SCM_INSERTED_DLSYMLIST_STRUCT_DECL during
diff computation.

21 years ago* raw-ltdl.h: add SCM_INSERTED_DLSYMLIST_STRUCT_DECL so we can
Rob Browning [Wed, 9 Oct 2002 21:16:24 +0000 (21:16 +0000)]
* raw-ltdl.h: add SCM_INSERTED_DLSYMLIST_STRUCT_DECL so we can
insert our own struct name here.

21 years ago* guile-ltdl.h: add scm_lt_dlsymlist typedef.
Rob Browning [Wed, 9 Oct 2002 21:16:18 +0000 (21:16 +0000)]
* guile-ltdl.h: add scm_lt_dlsymlist typedef.
(scm_lt_dlpreload_default): new function.  Replaces
scm_lt_dlset_preloaded_symbols which depended on global that
libtool automagically defines in binaries, not libs.

21 years ago* guile-ltdl.c (scm_lt_dlpreload_default): new function. Replaces
Rob Browning [Wed, 9 Oct 2002 21:16:12 +0000 (21:16 +0000)]
* guile-ltdl.c (scm_lt_dlpreload_default): new function.  Replaces
scm_lt_dlset_preloaded_symbols which depended on global that
libtool automagically defines in binaries, not libs.  Now the call
in guile.c has to pass us that magic value.
(SCM_INSERTED_DLSYMLIST_STRUCT_DECL): used to add a struct name in
the lt_dlsymlist typedef -- we use such a crazy name so we can
remove this in the upstream diff computation.

21 years ago*** empty log message ***
Rob Browning [Wed, 9 Oct 2002 21:16:05 +0000 (21:16 +0000)]
*** empty log message ***

21 years ago* guile.c (main): change to call scm_lt_dlpreload_default and pass
Rob Browning [Wed, 9 Oct 2002 21:15:59 +0000 (21:15 +0000)]
* guile.c (main): change to call scm_lt_dlpreload_default and pass
in lt_preloaded_symbols, a value libtool automagically adds to the
binary.

21 years agoUse scm_num2int rather than SCM_INUM in soft port extension.
Neil Jerram [Wed, 9 Oct 2002 19:34:55 +0000 (19:34 +0000)]
Use scm_num2int rather than SCM_INUM in soft port extension.

21 years agoExtend soft ports to use input-waiting thunks.
Neil Jerram [Wed, 9 Oct 2002 19:07:23 +0000 (19:07 +0000)]
Extend soft ports to use input-waiting thunks.

21 years ago*** empty log message ***
Marius Vollmer [Mon, 7 Oct 2002 16:38:04 +0000 (16:38 +0000)]
*** empty log message ***

21 years ago* scheme-scheduling.texi (Asyncs): Updated.
Marius Vollmer [Mon, 7 Oct 2002 16:34:28 +0000 (16:34 +0000)]
* scheme-scheduling.texi (Asyncs): Updated.
* posix.texi (sigaction): Updated.

21 years ago*** empty log message ***
Rob Browning [Sat, 5 Oct 2002 20:34:24 +0000 (20:34 +0000)]
*** empty log message ***

21 years ago*** empty log message ***
Marius Vollmer [Sat, 5 Oct 2002 13:07:28 +0000 (13:07 +0000)]
*** empty log message ***

21 years ago(root_mark): Mark active_asyncs slot.
Marius Vollmer [Sat, 5 Oct 2002 13:07:06 +0000 (13:07 +0000)]
(root_mark): Mark active_asyncs slot.

21 years ago* async.c (scm_async_click): Set the cdr of a executed handler
Marius Vollmer [Sat, 5 Oct 2002 13:06:58 +0000 (13:06 +0000)]
* async.c (scm_async_click): Set the cdr of a executed handler
cell to SCM_BOOL_F, not SCM_EOL.
(scm_i_queue_async_cell): Queue the cell at the end of the list,
and only if the handler procedure is not already present.
(scm_system_async_mark_for_thread): Initialize cdr of handler cell
with SCM_BOOL_F.
* scmsigs.c (scm_sigaction_for_thread): Likewise.

21 years ago*** empty log message ***
Marius Vollmer [Sat, 5 Oct 2002 11:57:41 +0000 (11:57 +0000)]
*** empty log message ***

21 years ago(end-multiline): Use '*function-name*' instead of nonexisting 'name'.
Marius Vollmer [Sat, 5 Oct 2002 11:57:35 +0000 (11:57 +0000)]
(end-multiline): Use '*function-name*' instead of nonexisting 'name'.

21 years ago(ltdl.h.diff, ltdl.c.diff): Create them in '.' not in 'upstream' since
Marius Vollmer [Sat, 5 Oct 2002 11:55:56 +0000 (11:55 +0000)]
(ltdl.h.diff, ltdl.c.diff): Create them in '.' not in 'upstream' since
we are already in upstream.

21 years agoMake sure that $autoheader is always set. When we would use the plain
Marius Vollmer [Sat, 5 Oct 2002 11:52:07 +0000 (11:52 +0000)]
Make sure that $autoheader is always set.  When we would use the plain
"autoconf", $autoheader would end up empty and libguile/scmconfig.h.in
would not be updated.

21 years ago* configure.in: turn on -Werror by default. We're now clean. I'd
Rob Browning [Sat, 5 Oct 2002 04:57:09 +0000 (04:57 +0000)]
* configure.in: turn on -Werror by default.  We're now clean.  I'd
like to stay that way.  If we want, we can turn it off by default
when we make the stable release, but I caught a lot of bugs this
way.  Accomodate libguile-ltdl -- therea are some ltdl things that
are commented out now INCLTDL and LIBLTDL.  I think we may not
need them anymore, but I'll leave them until we're sure.  We also
killed off the libltdl dir and related options including the
AC_CONFIG_SUBDIRS.  I also added some explicit tests for some
headers and functions that weren't listed but were in
scmconfig.h.in. though this may have been unnecessary.

21 years ago* autogen.sh: remove support for libltdl sub-configure.
Rob Browning [Sat, 5 Oct 2002 04:55:57 +0000 (04:55 +0000)]
* autogen.sh: remove support for libltdl sub-configure.
(ac_version): widen support check to any 2.5?  autoconf version.
2.54 is out now.

21 years ago* Makefile.am (SUBDIRS): remove libltdl.
Rob Browning [Sat, 5 Oct 2002 04:55:51 +0000 (04:55 +0000)]
* Makefile.am (SUBDIRS): remove libltdl.

21 years ago*** empty log message ***
Rob Browning [Sat, 5 Oct 2002 04:55:43 +0000 (04:55 +0000)]
*** empty log message ***

21 years ago* guile.c (main): switch to scm_lt_dlset_preloaded_symbols;
Rob Browning [Sat, 5 Oct 2002 04:55:28 +0000 (04:55 +0000)]
* guile.c (main): switch to scm_lt_dlset_preloaded_symbols;

21 years ago* dynl.c (sysdep_dynl_link): switch to scm_lt_dlhandle,
Rob Browning [Sat, 5 Oct 2002 04:55:22 +0000 (04:55 +0000)]
* dynl.c (sysdep_dynl_link): switch to scm_lt_dlhandle,
scm_lt_dlopenext, and scm_lt_dlerror.
(sysdep_dynl_unlink): switch to scm_lt_dlhandle, scm_lt_dlclose,
and scm_lt_dlerror.
(sysdep_dynl_func): switch to scm_lt_dlhandle, scm_lt_dlsym,
and scm_lt_dlerror.
(sysdep_dynl_init): switch to scm_lt_dlinit();

21 years ago* Makefile.am (libguile_la_LIBADD): switch to use
Rob Browning [Sat, 5 Oct 2002 04:55:16 +0000 (04:55 +0000)]
* Makefile.am (libguile_la_LIBADD): switch to use
libguile-ltdl.la.

21 years ago* ChangeLog: moved from ../libltdl.
Rob Browning [Sat, 5 Oct 2002 04:54:50 +0000 (04:54 +0000)]
* ChangeLog: moved from ../libltdl.

21 years ago* raw-ltdl.h: guile's modified version of the upstream ltdl.h.
Rob Browning [Sat, 5 Oct 2002 04:52:02 +0000 (04:52 +0000)]
* raw-ltdl.h: guile's modified version of the upstream ltdl.h.

21 years ago* raw-ltdl.c: guile's modified version of the upstream ltdl.c.
Rob Browning [Sat, 5 Oct 2002 04:51:55 +0000 (04:51 +0000)]
* raw-ltdl.c: guile's modified version of the upstream ltdl.c.

* raw-ltdl.c: Remove custom realloc. (#define rpl_realloc
realloc).  You can't define realloc like this unless you also
define malloc.  This is a quick hack for now; we may want
something cleaner later.
(memcpy): coerce ptrs to (char *) before copying characters
through them -- I can't recall for sure, but I believe this was
causing an overrun error at times.
(realloc): commented out -- as mentioned above, you can't define
your own malloc unless you know enough about the malloc in use to
be able to tell how big the src ptr is.  The disabled code
incorrectly used the *destination* ptr to decide how much to copy.
This sometimes results in out-of-bound accesses which cause
segfaults.
(tryall_dlopen_module): check to be sure (dirname_len > 0) before
testing first character against '/'.
(try_dlopen): check for feof(file) in read loop -- otherwise
infloop?
(scm_lt_dlopenext): remove unused variable file_found.
(LT_EOS_CHAR): moved here from guile-ltdl.h.

21 years ago* guile-ltdl.h: main header file for guile's internal
Rob Browning [Sat, 5 Oct 2002 04:51:36 +0000 (04:51 +0000)]
* guile-ltdl.h: main header file for guile's internal
libguile-ltdl.

* raw-ltdl.c: Remove custom realloc. (#define rpl_realloc
realloc).  You can't define realloc like this unless you also
define malloc.  This is a quick hack for now; we may want
something cleaner later.
(memcpy): coerce ptrs to (char *) before copying characters
through them -- I can't recall for sure, but I believe this was
causing an overrun error at times.
(realloc): commented out -- as mentioned above, you can't define
your own malloc unless you know enough about the malloc in use to
be able to tell how big the src ptr is.  The disabled code
incorrectly used the *destination* ptr to decide how much to copy.
This sometimes results in out-of-bound accesses which cause
segfaults.
(tryall_dlopen_module): check to be sure (dirname_len > 0) before
testing first character against '/'.
(try_dlopen): check for feof(file) in read loop -- otherwise
infloop?
(scm_lt_dlopenext): remove unused variable file_found.
(LT_EOS_CHAR): moved here from guile-ltdl.h.

21 years ago* guile-ltdl.c: main source file for libguile-ltdl -- #includes
Rob Browning [Sat, 5 Oct 2002 04:51:30 +0000 (04:51 +0000)]
* guile-ltdl.c: main source file for libguile-ltdl -- #includes
raw-ltdl.c and raw-ldtl.h directly.  See README.

21 years ago* guile-ltdl.c: main source file for libguile-ltdl -- #includes
Rob Browning [Sat, 5 Oct 2002 04:51:24 +0000 (04:51 +0000)]
* guile-ltdl.c: main source file for libguile-ltdl -- #includes
raw-ltdl.c and raw-ldtl.h directly.  See README.

* README: moved from ../libltdl.

21 years ago* Makefile.am: build new libguile-ltdl.
Rob Browning [Sat, 5 Oct 2002 04:51:19 +0000 (04:51 +0000)]
* Makefile.am: build new libguile-ltdl.

* upstream/Makefile.am: new file.

21 years ago* ChangeLog: moved from ../libltdl.
Rob Browning [Sat, 5 Oct 2002 04:51:12 +0000 (04:51 +0000)]
* ChangeLog: moved from ../libltdl.

21 years ago* COPYING.LIB: moved from ../libltdl.
Rob Browning [Sat, 5 Oct 2002 04:51:06 +0000 (04:51 +0000)]
* COPYING.LIB: moved from ../libltdl.

21 years ago* upstream/ltdl.h: upstream source.
Rob Browning [Sat, 5 Oct 2002 04:46:57 +0000 (04:46 +0000)]
* upstream/ltdl.h: upstream source.

21 years ago* upstream/ltdl.c: upstream source.
Rob Browning [Sat, 5 Oct 2002 04:46:51 +0000 (04:46 +0000)]
* upstream/ltdl.c: upstream source.

21 years ago* upstream/Makefile.am: new file.
Rob Browning [Sat, 5 Oct 2002 04:46:44 +0000 (04:46 +0000)]
* upstream/Makefile.am: new file.

21 years ago*** empty log message ***
Rob Browning [Sat, 5 Oct 2002 04:45:15 +0000 (04:45 +0000)]
*** empty log message ***

21 years ago*** empty log message ***
Rob Browning [Sat, 5 Oct 2002 04:33:35 +0000 (04:33 +0000)]
*** empty log message ***

21 years ago* numbers.c (s_scm_integer_expt): (expt 0 1) should be 1.
Rob Browning [Sat, 5 Oct 2002 04:27:35 +0000 (04:27 +0000)]
* numbers.c (s_scm_integer_expt): (expt 0 1) should be 1.

21 years ago*** empty log message ***
Rob Browning [Sat, 5 Oct 2002 04:21:04 +0000 (04:21 +0000)]
*** empty log message ***

21 years ago* tests/numbers.test ("expt"): add tests.
Rob Browning [Sat, 5 Oct 2002 04:12:23 +0000 (04:12 +0000)]
* tests/numbers.test ("expt"): add tests.

21 years ago* summarize-guile-TODO (as-leaf): make #\: a char-set.
Rob Browning [Sat, 5 Oct 2002 04:11:51 +0000 (04:11 +0000)]
* summarize-guile-TODO (as-leaf): make #\: a char-set.

21 years ago* boot-9.scm (expt): switch if sense and use negative? rather than
Rob Browning [Sat, 5 Oct 2002 04:10:48 +0000 (04:10 +0000)]
* boot-9.scm (expt): switch if sense and use negative? rather than
>= 0.

21 years ago*** empty log message ***
Marius Vollmer [Fri, 4 Oct 2002 14:13:51 +0000 (14:13 +0000)]
*** empty log message ***

21 years ago* scmsigs.h (scm_sigaction_for_thread): New prototype.
Marius Vollmer [Fri, 4 Oct 2002 14:13:26 +0000 (14:13 +0000)]
* scmsigs.h (scm_sigaction_for_thread): New prototype.

* scmsigs.c (got_signal): Removed.
(signal_handler_cells, signal_handler_threads): New.
(take_signal): Queue the cell of the signal for the specified
thread.  Reset the signal handler on systems that don't have
sigaction.
(sys_deliver_signals): Removed.
(close_1): New.
(scm_sigaction_for_thread): Renamed from scm_sigaction and
extended to also set the thread of a signal and allocate a cell
for it.  Keep the Scheme name "sigaction".  Check that signum is
within range.  Also, use SCM_VECTOR_REF instead of SCM_VELTS.
(scm_sigaction): Implement in terms of scm_sigaction_for_thread.
(scm_init_scmsigs): Allocate signal_handler_cells and
signal_handler_threads vectors.

21 years ago* __scm.h (scm_asyncs_pending_p): Removed.
Marius Vollmer [Fri, 4 Oct 2002 13:49:29 +0000 (13:49 +0000)]
* __scm.h (scm_asyncs_pending_p): Removed.
(SCM_ASYNC_CLICK): Check scm_active_asyncs instead of
scm_asyncs_pending_p.

21 years agoRemoved GUILE_OLD_ASYNC_CLICK code. Reorganized so that system asnycs
Marius Vollmer [Fri, 4 Oct 2002 13:49:13 +0000 (13:49 +0000)]
Removed GUILE_OLD_ASYNC_CLICK code.  Reorganized so that system asnycs
and user asyncs are separated.  Reimplemented system asyncs to work
per-thread.

21 years ago* async.h (scm_asyncs_pending, scm_set_tick_rate,
Marius Vollmer [Fri, 4 Oct 2002 13:47:35 +0000 (13:47 +0000)]
* async.h (scm_asyncs_pending, scm_set_tick_rate,
scm_set_switch_rate, scm_system_async_mark_from_signal_handler):
Removed prototypes.
(scm_i_queue_async_cell): New.

21 years ago(scm_init_gc): Do not use scm_system_async.
Marius Vollmer [Fri, 4 Oct 2002 13:42:43 +0000 (13:42 +0000)]
(scm_init_gc): Do not use scm_system_async.

21 years ago*** empty log message ***
Marius Vollmer [Fri, 4 Oct 2002 13:09:45 +0000 (13:09 +0000)]
*** empty log message ***

21 years ago(top-repl): Use "1" instead of "%deliver-signals" to limit the signal
Marius Vollmer [Fri, 4 Oct 2002 13:09:30 +0000 (13:09 +0000)]
(top-repl): Use "1" instead of "%deliver-signals" to limit the signal
stack.

21 years ago(scm_system_async_mark_for_thread): New prototype.
Marius Vollmer [Thu, 3 Oct 2002 23:00:58 +0000 (23:00 +0000)]
(scm_system_async_mark_for_thread): New prototype.

21 years agoRemoved GUILE_OLD_ASYNC_CLICK code.
Marius Vollmer [Thu, 3 Oct 2002 22:59:08 +0000 (22:59 +0000)]
Removed GUILE_OLD_ASYNC_CLICK code.

21 years ago* root.h (scm_root_state): Added new "active_asyncs" slot.
Marius Vollmer [Thu, 3 Oct 2002 22:56:52 +0000 (22:56 +0000)]
* root.h (scm_root_state): Added new "active_asyncs" slot.
* root.c (scm_make_root): Initialize it to SCM_EOL.

21 years ago(scm_root_state): Added new "active_asyncs" slot.
Marius Vollmer [Thu, 3 Oct 2002 22:54:25 +0000 (22:54 +0000)]
(scm_root_state): Added new "active_asyncs" slot.

21 years ago* coop-defs.h (coop_t): Added new "handle" slot.
Marius Vollmer [Thu, 3 Oct 2002 22:53:17 +0000 (22:53 +0000)]
* coop-defs.h (coop_t): Added new "handle" slot.
* coop-threads.c (all_threads, scm_current_thread,
scm_all_threads, scm_i_thread_root): New.
(scm_threads_init): Add main thread to all_threads.
(scheme_launch_thread): Remove thread from all_threads when it
terminates.
(scm_call_with_new_thread): Initialize handle slot of coop_t
structure and add new thread to all_threads.
(scm_spawn_thread): Likewise.

21 years ago* threads.h (scm_current_thread, scm_all_threads): New prototypes.
Marius Vollmer [Thu, 3 Oct 2002 22:48:15 +0000 (22:48 +0000)]
* threads.h (scm_current_thread, scm_all_threads): New prototypes.
* threads.c (scm_current_thread, scm_all_threads): Register as
primitives.