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

151 commits

Author SHA1 Message Date
Gary Houston
e38303a26d * ioext.h: removed scm_duplicate_port prototype.
* ioext.c (scm_primitive_dup2): return the new file descriptor
instead of SCM_UNSPECIFIED, since similarity to scm_primitive_dup
is convenient.
(scm_fdopen): bug fix: don't try to make port unbuffered until its
stream has been set.
(scm_duplicate_port): deleted, there's now an implementation in
boot-9.scm.
(scm_primitive_dup2): do nothing if newfd == oldfd.

* boot-9.scm (dup->port, dup->inport, dup->outport, dup->fdes,
dup, fdes->inport, fdes->outport, port->fdes): new procedures.
(duplicate-port): was a C primitive, now it's here.
(move->fdes): allow the first argument to be a file descriptor.
Return the modified port or file descriptor (was unspecified.)
1997-07-21 08:52:26 +00:00
Jim Blandy
4cd2a3e684 Changes to compile under gnu-win32, from Marcus Daniels:
* boot-9.scm (load-user-init): If HOME is unset, provide
a default of /.
1997-07-11 05:41:24 +00:00
Jim Blandy
3c5af9ef9b * boot-9.scm (define-public): Changed to accomodate Hobbit. 1997-07-11 05:13:59 +00:00
Jim Blandy
8bb7330c9c * boot-9.scm, debug.scm, hcons.scm, lineio.scm, mapping.scm,
poe.scm, slib.scm, tags.scm, threads.scm: Use normal list
notation, instead of #/ notation.
1997-06-24 16:26:27 +00:00
Jim Blandy
fb6d10650f Fix inconsistencies in parsing of #/ style lists.
* boot-9.scm (read-path-list-notation): New function.
(parse-path-symbol): Deleted.  Replaced by above.
Plug in read-path-list-notation as the parser for #/ lists,
instead of the anonymous lambda form calling parse-path-symbol.
(Thanks to Maurizio Vitale.)
1997-06-24 03:30:11 +00:00
Jim Blandy
f244dee1a1 Revert Marcus's changes; will re-apply when we get papers. 1997-06-24 02:16:31 +00:00
Jim Blandy
eda764e9d4 Changes to compile under gnu-win32, from Marcus Daniels:
* boot-9.scm (load-user-init): If HOME is unset, provide
a default of /.
1997-06-24 01:44:58 +00:00
Jim Blandy
75fd4fb691 * boot-9.scm (make-list): Remove the definition of this function
from the (ice-9 common-list) module; make the `init' argument
optional in the	scm module's definition, to match the deleted
definition.  Harmony reigneth?  (Thanks to Bernard URBAN.)
1997-06-23 23:44:20 +00:00
Jim Blandy
9946dd45a4 Try to detect when people are using one version of libguile and a
different version of ice-9.  People have been skewing things and
sending in bug reports.
* version.scm.in: New file, which the configure script munges to
produce version.scm, which contains the ice-9 config stamp.
* boot-9.scm: Compare the libguile and ice-9 config stamps;
display a warning if the two are different.
* Makefile.am: Install version.scm, but don't distribute it.
Distribute version.scm.in, but don't install it.
* Makefile.in: Regenerated.
1997-06-22 23:46:41 +00:00
Jim Blandy
52c5a23aed * boot-9.scm (struct-printer): Fix off-by-one error in range
check.  Correctly check for struct printer tag.

* boot-9.scm (with-regexp-parts): Comment this out.  It has no
users in the core, and relies on mildly hairy details of the old
regexp interface.

* boot-9.scm (ipow-by-squaring, butlast): Fix uses of outdated
function names.

* boot-9.scm (with-excursion-getter-and-setter, q-rear): Doc
fixes.
1997-06-13 05:50:49 +00:00
Marius Vollmer
755da2fc99 * boot-9.scm (struct-printer): Bugfix: Check the layout of the
vtable and not the one of the struct.
1997-06-06 15:14:55 +00:00
Marius Vollmer
fa7e927466 * boot-9.scm (struct-layout, %struct-printer-tag, struct-printer,
make-struct-printer, set-struct-printer-in-vtable!): New bindings
to support printing of structures.
(record-type-vtable, make-record-type): Add slot to hold printing
function and initialize it with something appropriate.  Removed
commented out printing code.
(record-type-name, record-type-fields): Adjusted slot offsets.
(%print-module): Reduce argument list to "mod" and "port".
1997-06-04 22:39:09 +00:00
Gary Houston
e1a191a8ca * scmsigs.h, async.h: updated.
* _scm.h: if HAVE_RESTARTS is defined then don't use a SYSCALL
loop.

* posix.c (scm_uname): interpret only negative values as an error.
Solaris normally returns a positive value.

* script.c (scm_compile_shell_switches): if we are not going into
an interactive repl, set scm_mask_ints to zero so that asyncs can
run.

* simpos.c (scm_system):  don't ignore/unignore signals around
the "system" call.

* posix.c (scm_open_pipe): don't ignore/unignore signals around
the "popen" call.

* init.c (scm_boot_guile_1): don't call scm_init_signals, it's
done in boot-9.scm instead.

* scmsigs.c, async.c: Major rewriting of signal handling code.
(scm_sigaction): new procedure.
(scm_sleep): don't wrap sleep in SCM_SYSCALL, it would mess up the
timing.
(scm_raise): return unspecified, throw error on failure.

* boot-9.scm: signal-handler, alarm-thunk: removed.
don't define ticks-interrupt etc.
top-repl: install signal handlers for SIGINT, SIGFPE, SIGSEGV, SIGBUS
during call to scm-style-repl.

* acconfig.h: mention HAVE_RESTARTS.
* configure.in: check for sigaction and restartable system calls.
1997-05-31 19:02:38 +00:00
Jim Blandy
05817d9e0e * regex.scm: Add a module declaration. Use DEFINE-PUBLIC everywhere.
* boot-9.scm: If the `regex' feature is present, use the module
(ice-9 regex).
1997-05-29 02:47:14 +00:00
Jim Blandy
1532804164 * COPYING, boot-9.scm, debug.scm, emacs.scm, expect.scm, gtcl.scm,
gwish.scm, hcons.scm, lineio.scm, mapping.scm, nonblocking.scm,
oldprint.scm, poe.scm, r4rs.scm, source.scm, tags.scm, test.scm,
threads.scm: New address for FSF.
1997-05-26 22:26:48 +00:00
Jim Blandy
5aa7fe691e doc fix 1997-05-15 21:22:25 +00:00
Jim Blandy
3a3e9e09b8 * boot-9.scm (eval-string): Function deleted; it was already
implemented in C, so there's no point in making a divergable copy
here.
1997-05-15 02:01:08 +00:00
Gary Houston
1fbc60b2c3 * boot-9.scm (error-catching-loop): don't read a line from
current input when quit is encountered, the previous change
fixes this too.
1997-05-13 04:46:16 +00:00
Jim Blandy
480977d064 * boot-9.scm (scm-style-repl): After reading an expression,
consume any trailing newline (perhaps preceded by whitespace), to
avoid screwing up GDB.  More detail in comments.
1997-05-13 00:02:05 +00:00
Marius Vollmer
6b8561828b * boot-9.scm (link-dynamic-module): Do not catch errors from
dynamic-link and dynamic-call.  When the shared library exists it is
now assumed to be suitable for a dynamic C module.
1997-04-30 13:35:11 +00:00
Marius Vollmer
89da903671 * boot-9.scm (process-use-modules): New function to support the
use-modules macro
(use-modules): throw an error iff one of the
requested modules can't be found.
1997-04-29 18:22:54 +00:00
Gary Houston
3be7701343 * boot-9.scm: don't define timer-thunk or gc-thunk. 1997-04-29 08:15:55 +00:00
Jim Blandy
ef00e7f466 * boot-9.scm (eval-string, command-line, load-user-init): New
functions.
1997-04-19 13:04:38 +00:00
Gary Houston
6549522160 * boot-9.scm (log10): defined. 1997-04-12 19:47:09 +00:00
Gary Houston
708bf0f343 * expect.scm (expect-select): correct the millisecond timeout
arithmetic (from Marko.Kohtala@ntc.nokia.com).
	* boot-9.scm (open-input-pipe, open-output-pipe): defined here
	instead of in libguile.
	(tm:sec etc.) new accessors for broken-down time.
	(set-tm:sec etc.) new setters for broken-down time.
1997-04-05 21:58:35 +00:00
Gary Houston
9337637f9a * boot-9.scm (netent:addrtype, servent:port): added missing
procedures.
(netent:net, servent:proto): repaired.
(utsname:sysname etc.): new accessors for uname.
* boot-9.scm (sockaddr:fam, sockaddr:path, sockaddr:addr,
sockaddr:port): new functions.
1997-03-29 18:38:21 +00:00
Mikael Djurfeldt
2e3fbd8de1 * boot-9.scm: Check if variable use-emacs-interface is defined
before using it.
1997-03-23 13:04:49 +00:00
Gary Houston
bce074ee22 * boot-9.scm: define accessor procedures for the objects returned
by getpw, getgr, gethost, getnet, getproto, getserv (e.g.,
	passwd:name, where the first component is the name of the C structure
 	and the second is the unprefixed C member name.)
*	* boot-9.scm (setpwent, setgrent, sethostent, setnetent, setprotoent,
	setservent): no longer take an argument, it was bogus.
1997-03-22 18:26:32 +00:00
Gary Houston
81e2a2357c * boot-9.scm (scm-error): deleted, reimplemented in C. 1997-03-15 18:12:17 +00:00
Mikael Djurfeldt
90268b356b * boot-9.scm (process-define-module): Modified to handle both
keywords and symbols.
1997-03-10 15:10:48 +00:00
Mikael Djurfeldt
04798288c6 * boot-9.scm (process-define-module): Modified to handle both
keywords and symbols.
1997-03-10 15:03:41 +00:00
Gary Houston
00c34e457c * boot-9.scm: swap order of a procedure. 1997-03-08 19:57:08 +00:00
Gary Houston
75a97b9224 * slib.scm: update read usage.
* r4rs.scm: update primitive-load usage.
Don't define read-sharp.

* boot-9.scm: use read-hash-extend to install extra read syntax.
(read-sharp): removed.
Adjust usage of primitive-load-path, read, which no longer take
case_i or read-sharp arguments.
1997-03-08 19:02:20 +00:00
Mikael Djurfeldt
90d5e28037 * boot-9.scm: Added loading of session support module.
* boot-9.scm (beautify-user-module!): Don't add the root module
interface to the end of the use-list of the root module.
1997-03-08 15:14:00 +00:00
Mikael Djurfeldt
cc7f066cd0 * boot-9.scm (beautify-user-module!): Don't add the root module
interface to the end of the use-list of the root module.
1997-03-08 02:29:35 +00:00
Gary Houston
f3c23298e9 * boot-9.scm: check use-emacs-interface for emacs support. 1997-03-05 21:08:06 +00:00
Gary Houston
7950df7c45 * boot-9.scm (scm-style-repl): call repl-report-start-timing if
read gets EOF.
* (exit): alias for quit.
1997-03-02 19:53:32 +00:00
Gary Houston
1a36eef2ea * throw.h: prototype for scm_exit_status.
* throw.c (scm_handle_by_message): if a 'quit is caught, use its
args to derive an exit status.  Allows (quit) to work from a
script.
(scm_exit_status): new function.
#include "eq.h".
1997-03-02 07:32:19 +00:00
Gary Houston
8e44e7a0c7 * boot-9.scm (error-catching-loop thunk): use a status variable to
return the quit args.
(scm-style-repl): call -quit, passing return value from
error-catching-repl.  Make -quit return its args.
stand-along-repl: comment out, since it seems unused.
(top-repl): convert the value returned by scm-style-repl to
an integer and return it.

(error-catching-loop thunk): discard trailing junk after a (quit).
1997-03-02 06:09:41 +00:00
Mikael Djurfeldt
06a02069fe * boot-9.scm: Removed the old printer code.
* r4rs.scm (apply, call-with-current-continuation): Added comment
explaining why apply and call/cc need to be closures.

* boot-9.scm (apply, call-with-current-continuation): Bugfix:
Removed. These definitions are already present in r4rs.scm.
1997-03-01 15:48:38 +00:00
Mikael Djurfeldt
59e1116d05 * debug.scm: Add hook for reset of trace level at abort.
* boot-9.scm (run-hooks): New procedure.
	(add-hooks!): New macro.
	Change hooks to use these functions.
1997-03-01 01:34:23 +00:00
Mikael Djurfeldt
d5d34fa189 (Slight improvement from previous fix.) 1997-03-01 01:01:09 +00:00
Mikael Djurfeldt
e6875011f4 * * debug.scm: *Warning* This feature is a bit premature. I add
it anyway because 1. it is very useful, and, 2. you can start
	making it less premature by complaining to me and by modifying
	the source! :-)
	(trace): Given one or more procedure objects, trace each one.
	Given no arguments, show all traced procedures.
	(untrace): Given one or more procedure objects, untrace each one.
	Given no arguments, untrace all traced procedures.  The tracing in
	Guile have an advantage to most other systems: We don't create new
	procedure objects, but mark the procedure objects themselves.
	This means that also anonymous and internal procedures can be
	traced.

	* boot-9.scm (error-catching-loop): Added handling of apply-frame
	and exit-frame exceptions.

*	* boot-9.scm (assert-repl-prompt, the-prompt-string): Removed.
	(set-repl-prompt!): Setter for repl prompt.
	(scm-style-repl): If prompt is #f, don't prompt; if prompt is a
	string, display it; if prompt is a thunk, call it and display its
	result; otherwise display "> ".
	(Change suggested by Roland Orre <orre@nada.kth.se>.)
1997-02-28 23:11:22 +00:00
Mikael Djurfeldt
eb52a06bb3 * boot-9.scm: Removed the enabling of debug evaluator and
recording of source code positions.  This was placed there for our
convenience, but it has already sneaked into the distribution
once... so we'd better add this in our local copies instead when
we need it.  (These options are normally enabled at the end of
boot-9.scm when loading the debug module.)
1997-02-27 22:36:16 +00:00
Marius Vollmer
ed218d98d7 * boot-9.scm (module-defined?): New function.
(macroexpand-1, macroexpand): Use local-ref instead of defined?
and eval.
* r4rs.scm (%load-verbosely): Use "module-defined?" instead of
"defined?".
* slib.scm (defined?): New function to take the place of the
builtin "defined?".  It allways examines the slib module.
1997-02-27 15:36:04 +00:00
Gary Houston
c2132276b8 * boot-9.scm (read-sharp): define directly, don't go through a
%read-sharp layer.
* boot-9.scm (uniform-vector-set!): use uniform-array-set1!, not
uniform-vector-set1! which doesn't exist.
1997-02-15 18:48:12 +00:00
Mikael Djurfeldt
d590bbf6d8 * boot-9.scm (backtrace): Removed. (A C version now exists in
backtrace.c.)
1997-02-10 01:05:50 +00:00
Gary Houston
1e531c3aee * boot-9.scm (read-line!, read-delimited!, read-delimited,
read-line): new	procedures, see libguile/ChangeLog.
1997-01-25 18:24:54 +00:00
Marius Vollmer
d0cbd20cd8 Added dynamic linking of modules. See libguile/DYNAMIC-LINKING.
* boot-9.scm (split-c-module-name, convert-c-registered-modules,
init-dynamic-module, dynamic-maybe-call,
find-and-link-dynamic-module, link-dynamic-module,
try-module-dynamic-link, registered-modules): New definitions for
dynamic linking of modules.
(resolve-module): Try to dynamically link the requested module
after failing to load it as Scheme code.
1997-01-18 11:29:20 +00:00
Gary Houston
920235cc17 * boot-9.scm (getservbyport, getservbyname): remove stray %. 1997-01-08 07:48:03 +00:00