5b9f71e1c53f1264faf431a920d0175f6d9bd3c3
[bpt/guile.git] / NOTES
1 This is the Guile developer notice-board. -*- change-log -*-
2 ----------------------------------------------------------------------
3 CONTENTS: Notes of various kinds which the Guile developers want to
4 share among eachother, e. g., a memo about something which needs
5 fixing. Describing a certain problem here means that everyone is free
6 to fix it when and as he wishes. (Of course it can sometimes be suitable
7 to discuss it first.)
8
9 RULES: Entries should have a date and the name of the author. Entries
10 should be sufficiently detailed to enable other members of the team to
11 understand them, but they need not be comprehensible to people who
12 don't spend much time on Guile. This file should not go into
13 snapshots or distributions, but is a strictly internal document.
14
15 CONVENTIONS: ChangeLog format. (Reverse chronological order.)
16 ----------------------------------------------------------------------
17
18 Sun Mar 9 15:45:14 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
19
20 * libguile/gc.c (scm_gc_sweep): The probability of collecting a
21 free cell should be very low (only occurring when a signal has
22 interrupted allocation). Nevertheless, the GC immediately exits
23 when the free cell test is enabled in the sweeper. Where does
24 this free cell come from?
25
26 * libguile/arbiters.c: Remove this file? When we've implemented
27 POSIX thread support, "arbiters" will be superfluous.
28
29 Thu Mar 6 00:54:59 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
30
31 * libguile/unif.c: Introduce "fancy printing" for vectors. "Fancy
32 printing" is performed by the printer when the `fancyp' flag is
33 set in the print state (see print.h). One of its effects is that
34 sequences should be printed with maximum `length' objects. (This
35 is currently only used in backtraces and error messages).
36 This works for lists, but not yet for vectors and arrays.
37
38 Wed Mar 5 22:56:19 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
39
40 * libguile/struct.c, libguile/struct.h, libguile/gc.c: Structs
41 need reimplementation. Both user interface and representation
42 need to be improved. E. g., the struct part of scm_gc_mark need
43 to be a lot more efficient. We should probably do this redesign
44 when designing(/porting) the object system.
45
46 * libguile/symbols.c (SCM_SYMBOL_HASH): This is slot is currently
47 not used for anything (except that it is used by symbol-hash). I
48 suppose it was originally intended to avoid doing multiple hashing
49 steps when handling symbols.
50
51 Mon Mar 3 21:36:58 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
52
53 * libguile/procprop.c: The current implementation of procedure
54 properties of closures uses a special property slot
55 (SCM_PROCPROPS (closure)), but primitive procedures don't have
56 such a slot. Setting or getting source properties for primitive
57 procedures currently involves making fake closures. These are
58 stored in an alist => finding the properties of a primitive
59 procedure is O (n primitive procedures with properties) which is
60 unacceptable.
61
62