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

1622 commits

Author SHA1 Message Date
Gary Houston
31703ab8c6 * ports.h (scm_ptob_descriptor): include a write procedure again.
it's more efficient for unbuffered fports (e.g., sockets.)

	* ports.c (scm_puts): use ptob->write.
	* vports.c (scm_make_sfptob): set write proc in ptob.
	* strports.c (scm_make_stptob): set write proc in ptob.
	* ports.c (write_void_port): new procedure.
	* vports.c (sf_write): new procedure.
	* ports.c (scm_lfwrite): use ptob->write.
	* strports.c (st_write): new procedure.
	* fports.c (fport_write): new procedure.
	(scm_make_fptob): set write in ptob to fport_write.
	* ports.h: prototype for scm_set_port_write.
	* ports.c (scm_make_port_type): initialise ptob write procedure.
	(scm_set_port_write): new proc.
1999-08-03 21:09:49 +00:00
Jim Blandy
769f054d52 *** empty log message *** 1999-08-01 08:08:18 +00:00
Jim Blandy
ae4c401660 * ports.c (scm_char_ready_p): Don't try to find PORT's ptab entry
until we've verified that it is actually a port.  (Thanks to
Lorentey Karoly.)
1999-08-01 08:07:40 +00:00
Mikael Djurfeldt
9ffdde1c44 *** empty log message *** 1999-07-31 17:01:53 +00:00
Mikael Djurfeldt
e4ef23303f * gc.c (scm_must_malloc, scm_must_realloc): Removed unnecessary
code, particularly an unnecessary test (len != size, where len ==
size).  (Was this leftovers from debugging code, or have I missed
something profound?)
1999-07-31 17:01:06 +00:00
Mikael Djurfeldt
5678aae066 *** empty log message *** 1999-07-31 09:05:58 +00:00
Mikael Djurfeldt
a7c930f19c * numbers.c (scm_makdbl): Bugfix: Initialize imaginary part.
(Thanks to Lorentey Karoly.)
1999-07-31 09:05:02 +00:00
Mikael Djurfeldt
b94903c2c1 * hashtab.c: Bugfix: Don't declare s_hash_fold without storage
size. (Thanks to James Dean Palmer.)
1999-07-31 09:04:46 +00:00
Mikael Djurfeldt
82a48a5747 Updated copyright notice 1999-07-30 21:48:33 +00:00
Mikael Djurfeldt
6e1fd26455 *** empty log message *** 1999-07-29 23:03:16 +00:00
Mikael Djurfeldt
a1ae1799ac * struct.c (scm_print_struct): Use vtable name. 1999-07-29 23:02:26 +00:00
Mikael Djurfeldt
fe970d8448 * stacks.c (scm_init_stacks): Set name of stack type. 1999-07-29 23:02:14 +00:00
Mikael Djurfeldt
e9cd0e473e * print.c (scm_init_print): Set name of print state type. 1999-07-29 23:02:01 +00:00
Mikael Djurfeldt
3a3111a88d * eval.c (scm_m_expand_body): Use scm_cons_source. 1999-07-29 23:01:01 +00:00
Mikael Djurfeldt
cb4832aefb *** empty log message *** 1999-07-29 21:13:33 +00:00
Mikael Djurfeldt
9f8c57ec0e * gsubr.c, procprop.h (scm_i_inner_name): Removed. 1999-07-29 21:12:42 +00:00
Mikael Djurfeldt
367a06cb7d * eval.c (SCM_CEVAL): Removed old implementation of internal
define.
1999-07-29 21:12:25 +00:00
Mikael Djurfeldt
7e3a72763c * debug.c, debug.h (scm_reverse_lookup): Added.
(scm_procedure_name): Use scm_reverse_lookup to lookup the name of
internal procedure definitions; Don't use scm_i_inner_name.
1999-07-29 21:11:51 +00:00
Mikael Djurfeldt
c75512d6a7 * debug.c, debug.h (scm_reverse_lookup): Added.
(scm_procedure_name): Use scm_reverse_lookup to lookup the name of
internal procedure definitions; Don't use scm_i_inner_name.

* debug.c (scm_procedure_source): Cons SCM_IM_LAMBDA onto
procedure source before calling scm_unmemocopy instead of faking
an environment.
1999-07-29 21:11:37 +00:00
Mikael Djurfeldt
6203706f4a Removed superfluous code in scm_macroexp. 1999-07-29 19:15:08 +00:00
Mikael Djurfeldt
8dc2b4f649 *** empty log message *** 1999-07-29 19:14:08 +00:00
Mikael Djurfeldt
2a52b4295e *** empty log message *** 1999-07-29 18:15:24 +00:00
Mikael Djurfeldt
29ff38c406 * eval.c, tags.h, print.c (SCM_IM_SLOT_REF, SCM_IM_SLOT_SET_X):
New isym operations.
1999-07-29 18:13:14 +00:00
Mikael Djurfeldt
de3ca191c0 * eval.h: Added prototypes for multi language support functions. 1999-07-29 18:13:04 +00:00
Mikael Djurfeldt
26d5b9b4a6 * eval.c, tags.h, print.c (SCM_IM_SLOT_REF, SCM_IM_SLOT_SET_X):
New isym operations.

* eval.c (SCM_IM_DISPATCH, SCM_IM_HASH_DISPATCH): Don't use
improper lists in the low-level representation, since that will
cause a begin to be prepended at macro expansion.

* eval.c (scm_cons_source): Version of cons which copies source
properties from an existing cell.
(scm_m_quote, scm_m_begin, scm_m_if, scm_m_set_x, scm_m_and,
scm_m_or, scm_m_case, scm_m_cond, scm_m_lambda, scm_m_letstar,
scm_m_do, scm_m_letrec, scm_m_let, scm_copy_tree): Use
scm_cons_source.
1999-07-29 18:12:51 +00:00
Mikael Djurfeldt
b09ef6795d *** empty log message *** 1999-07-29 09:55:25 +00:00
Mikael Djurfeldt
43c667e9c1 * eval.c, tags.h, print.c (SCM_IM_SLOT_REF, SCM_IM_SLOT_SET_X):
New isym operations.
1999-07-29 09:54:34 +00:00
Mikael Djurfeldt
ca4be6ea9e * eval.c (SCM_IM_DISPATCH, SCM_IM_HASH_DISPATCH): Don't use
improper lists in the low-level representation, since that will
cause a begin to be prepended at macro expansion.

* eval.c, tags.h, print.c (SCM_IM_SLOT_REF, SCM_IM_SLOT_SET_X):
New isym operations.
1999-07-29 09:54:10 +00:00
Mikael Djurfeldt
294b1b2e3e * eval.h: Added prototypes for multi language support functions. 1999-07-29 09:53:48 +00:00
Mikael Djurfeldt
4725c2983f Removed configuration option --enable-lang which was recently added. 1999-07-28 20:39:34 +00:00
Mikael Djurfeldt
a6ba4ef89e *** empty log message *** 1999-07-27 19:14:19 +00:00
Mikael Djurfeldt
749c7da12a Regenerated 1999-07-27 19:12:13 +00:00
Mikael Djurfeldt
159500fb70 * tags.h, print.c (SCM_IM_NIL_COND, SCM_IM_NIL_IFY, SCM_IM_T_IFY,
SCM_IM_0_COND, SCM_IM_0_IFY, SCM_IM_1_IFY), print.c
(scm_isymnames): New isyms for multi-language support.
1999-07-27 19:10:04 +00:00
Mikael Djurfeldt
68a08303f1 * Makefile.am (EXTRA_libguile_la_SOURCES): Added lang.c.
* lang.c: New file: Beginning of multi-language support.
1999-07-27 19:09:31 +00:00
Mikael Djurfeldt
397daa3dfc * init.c (scm_boot_guile_1): Added call to scm_init_lang (). 1999-07-27 19:09:19 +00:00
Mikael Djurfeldt
73b6434264 * eval.c (scm_nil, scm_t): New symbols.
(nil-cond, nil-ify, t-ify, 0-cond, 0-ify, 1-ify): New special
forms for multi-language support.
1999-07-27 19:09:06 +00:00
Mikael Djurfeldt
6778caf93e * dynwind.c (scm_dowinds): Removed obsolete wind_key #f case.
(scm_dynamic_wind): Added argument checking for the after guard so
that we don't add garbage on the dynwind chain.
(scm_swap_bindings): Added.
1999-07-27 19:08:39 +00:00
Mikael Djurfeldt
094ce85606 * Makefile.am (EXTRA_libguile_la_SOURCES): Added lang.c. 1999-07-27 19:08:11 +00:00
Mikael Djurfeldt
259529f27d *** empty log message *** 1999-07-25 19:26:55 +00:00
Mikael Djurfeldt
9b741bb6da * random.c, random.h (scm_c_default_rstate, scm_c_uniform32):
Added.
Renamed functions in the random function library interface
from scm_i_XXX --> scm_c_XXX.
1999-07-25 19:25:01 +00:00
Gary Houston
1b9c3daec9 1999-07-25 Gary Houston <ghouston@easynet.co.uk>
* ports.c (scm_putc): fix line-buffering.

(init.c: remove an obsolete comment).
1999-07-25 17:45:01 +00:00
Mikael Djurfeldt
6c747373c5 * ports.c, ports.h, fports.c, strports.c, vports.c: Renamed
scm_set_ptob_XXX --> scm_set_port_XXX.
1999-07-25 12:21:03 +00:00
Mikael Djurfeldt
544e90932f *** empty log message *** 1999-07-25 12:20:31 +00:00
Mikael Djurfeldt
831e230df0 Regenerated 1999-07-24 23:12:27 +00:00
Mikael Djurfeldt
10efca5bce * vports.c (scm_sfport, prinsfpt, sf_read_flush, noop0): Removed.
(scm_make_sfport): Added.
1999-07-24 23:11:11 +00:00
Mikael Djurfeldt
f15913d08f *** empty log message *** 1999-07-24 23:10:57 +00:00
Mikael Djurfeldt
0b6881fa6c * strports.c (scm_stptob, prinstpt, noop0): Removed
(scm_make_stptob): Added.
1999-07-24 23:10:43 +00:00
Mikael Djurfeldt
2c16a78a11 * smob.c (scm_smob_print): Handle non-existing type name nicely.
Removed #include "genio.h"
1999-07-24 23:10:27 +00:00
Mikael Djurfeldt
f12733c9d4 * ports.c, ports.h (scm_make_port_type): New interface for
creation of port types (replaces scm_newptob).  Just as for the
smobs, we need to separate the internal representation of smob
types from the interface, so that we easily can add new fields and
rearrange things without caring about backward compatibility.
This change was forced by the need in GOOPS to create classes
representing port types.
(scm_set_ptob_mark, scm_set_ptob_free, scm_set_ptob_print,
scm_set_ptob_equalp, scm_set_ptob_flush_input, scm_set_ptob_close,
scm_set_ptob_seek, scm_set_ptob_truncate,
scm_set_ptob_input_waiting_p): New setters.
(scm_newptob): Rewritten to use scm_make_port_type.  For backward
compatibility.
(scm_ptobs): Changed type scm_ptobfuns --> scm_ptob_descriptor.
(scm_prinport): Removed.
(scm_port_print): Added.
(scm_print_port_mode): Added.
(void_port_ptob, print_void_port, close_void_port, noop0):
Removed.  Removed #include "genio.h" Added #include "objects.h",
#include "smobs.h"
1999-07-24 23:10:13 +00:00
Mikael Djurfeldt
c163662710 * objects.c (scm_make_port_classes): New function ptr. 1999-07-24 23:09:48 +00:00