|
Name |
|
Date |
Size |
#Lines |
LOC |
| .. | | 03-May-2022 | - |
| debian/ | H | 07-May-2022 | - | 1,620 | 1,567 |
| doc/ | H | 25-Aug-2017 | - | 318 | 234 |
| intl/ | H | 03-May-2022 | - | 3,917 | 2,658 |
| lisp/ | H | 03-May-2022 | - | 15,161 | 12,667 |
| m4/ | H | 25-Aug-2017 | - | 9,075 | 8,203 |
| man/ | H | 03-May-2022 | - | 12,645 | 9,578 |
| src/ | H | 03-May-2022 | - | 42,002 | 30,847 |
| .gdbinit | H A D | 25-Aug-2017 | 259 | 14 | 11 |
| .gitattributes | H A D | 25-Aug-2017 | 31 | 2 | 1 |
| .gitignore | H A D | 25-Aug-2017 | 43 | 9 | 8 |
| COPYING | H A D | 25-Aug-2017 | 17.6 KiB | 342 | 282 |
| ChangeLog | H A D | 25-Aug-2017 | 38.2 KiB | 1,339 | 944 |
| INSTALL | H A D | 25-Aug-2017 | 7.5 KiB | 182 | 141 |
| MAINTAINERS | H A D | 25-Aug-2017 | 63 | 4 | 3 |
| Makedefs.in | H A D | 25-Aug-2017 | 2.8 KiB | 109 | 92 |
| Makefile.in | H A D | 03-May-2022 | 4.7 KiB | 135 | 92 |
| NEWS | H A D | 25-Aug-2017 | 46 KiB | 1,488 | 963 |
| README | H A D | 25-Aug-2017 | 4.4 KiB | 147 | 95 |
| TODO | H A D | 25-Aug-2017 | 7.2 KiB | 237 | 147 |
| aclocal.m4 | H A D | 25-Aug-2017 | 12.1 KiB | 332 | 294 |
| autogen.sh | H A D | 25-Aug-2017 | 790 | 38 | 30 |
| build-info | H A D | 25-Aug-2017 | 1.2 KiB | 55 | 40 |
| config.guess | H A D | 25-Aug-2017 | 42.9 KiB | 1,463 | 1,270 |
| config.h.in | H A D | 25-Aug-2017 | 8.8 KiB | 374 | 252 |
| config.sub | H A D | 25-Aug-2017 | 35.5 KiB | 1,826 | 1,688 |
| configure | H A D | 25-Aug-2017 | 493.7 KiB | 17,441 | 13,786 |
| configure.ac | H A D | 25-Aug-2017 | 20.6 KiB | 675 | 589 |
| emulate-gnu-tar | H A D | 25-Aug-2017 | 2.4 KiB | 173 | 132 |
| install-aliases | H A D | 25-Aug-2017 | 2.9 KiB | 130 | 100 |
| install-sh | H A D | 25-Aug-2017 | 14.8 KiB | 509 | 329 |
| librep-0.92.7.ebuild | H A D | 25-Aug-2017 | 1.4 KiB | 57 | 42 |
| librep.doap | H A D | 25-Aug-2017 | 820 | 21 | 17 |
| librep.ebuild.in | H A D | 25-Aug-2017 | 1.4 KiB | 57 | 42 |
| librep.pc.in | H A D | 25-Aug-2017 | 404 | 19 | 16 |
| librep.spec | H A D | 25-Aug-2017 | 4.4 KiB | 155 | 123 |
| librep.spec.in | H A D | 25-Aug-2017 | 4.4 KiB | 155 | 123 |
| ltmain.sh | H A D | 25-Aug-2017 | 316.8 KiB | 11,157 | 7,986 |
| mkinstalldirs | H A D | 25-Aug-2017 | 676 | 41 | 23 |
| rep-debugger.el | H A D | 25-Aug-2017 | 5 KiB | 138 | 63 |
| rules.mk.in | H A D | 25-Aug-2017 | 653 | 22 | 14 |
| test | H A D | 25-Aug-2017 | 391 | 18 | 14 |
README
1[ this is -*-Text-*- ]
2
3Complete documentation is given in info file.
4
5This is librep, a Lisp system for UNIX, needed by Sawfish window
6manager. It contains a Lisp interpreter, byte-code compiler and
7virtual machine. Applications may use the Lisp interpreter as an
8extension language, or it may be used for stand-alone scripts.
9
10The Lisp dialect was originally inspired by Emacs Lisp, but with the
11worst features removed. It also borrows many ideas from Scheme.
12
13It is known to compile on at least Solaris/sparc and Linux, x86 and
14x86-64.
15
16It is released under the terms of the GNU GPL,
17copyright John Harper <jsh@pixelslut.com>
18
19Maintainer until Aug 2008: John Harper
20Maintainer since Aug 2008: Christopher Bratusek
21
22For more details see:
23
24 http://sawfish.wikia.com/
25
26To compile this you'll need GNU make, and GNU dbm
27installed. Basically, just do:
28
29 $ ./configure
30 $ make
31 $ make install
32
33Notes
34=====
35
3664-bit systems
37--------------
38
39Basically support of 64-bit systems works, but if not, read this:
40
41You may want to look at the `--with-value-type' configure option. This
42is an implicitly signed integer type (i.e. `int', `long', etc) that is
43wide enough to store an arbitrary pointer without losing any bits.
44
45It should be detected automatically by the configure script, but if not
46there are two most likely required settings:
47
48 1. For a machine with 64-bit pointers and longs, but only 32-bit ints
49 the following could be done:
50
51 $ ./configure --with-value-type=long
52
53 2. For a machine with both int and long 32-bits, but with 64-bit
54 pointers and long long ints, then:
55
56 $ ./configure --with-value-type="long long"
57
58If this option is set incorrectly (i.e. to an integer type that is too
59small) a run-time assertion will be triggered when the interpreter
60initialises itself.
61
62Also, if this option is set to anything but int, long, or long long,
63then the src/rep_config.h file will need to be edited for the constant
64suffix and printf conversion of the chosen type.
65
66
67libgmp
68------
69
70rep optionally uses GNU MP for its bignum/rational implementation;
71you can find it at any GNU mirror. GMP versions 2 and 3 are both known
72to work (though version 3 is recommended)
73
74
75shared libraries
76----------------
77
78rep includes plugins providing language bindings for several libraries.
79Because these plugins are implemented as shared objects that are loaded
80at runtime, the libraries they wrap must also be shared libraries on
81most systems. This means that the installed libgdm must be shared, and
82if compiling with readline support, so must libreadline
83
84
85cut-down version
86----------------
87
88The configure script accepts the following options to build restricted
89versions of librep. The resulting library is binary-compatible with the
90normal version.
91
92 --without-gmp
93
94 Don't use GNU MP for bignums. Use `long long' as biggest integer
95 type (if available, else just `long'). Also, there is no support
96 for exact rationals, thus (/ 1 2) => 0.5 not 1/2
97
98 --disable-continuations
99
100 Don't include support for call/cc or multi-threading. This may be
101 useful for machines with non-linear stacks (old crays?)
102
103
104obscure configure options
105-------------------------
106
107 --enable-dballoc
108
109 Trace all memory allocations. Not for general use
110
111 --disable-dbsyms
112
113 When printing C stack backtraces, don't try to output symbolic
114 addresses
115
116 --enable-gprof
117
118 Compile with flags enabling profiling. Also needs --enable-static
119 to be given. Use the `srep' target in the src directory to build a
120 statically linked interpreter (since gprof doesn't profile shared
121 libraries)
122
123 --with-malloc-alignment=BYTES
124
125 The minimum alignment of memory returned from malloc (). Defaults
126 to the machine's word size. It's unlikely this will ever need to be
127 specified explicitly
128
129 --with-stack-direction=DIRECTION
130
131 Direction of stack growth. -1 for downwards (grows from higher
132 addresses to lower addresses), +1 for upwards. If not given, will
133 try to infer this automatically (though it has been known to fail)
134
135 --enable-full-name-terminator=CHARACTER
136
137 If the GECOS fields in your password file contain extra information
138 after the user's full name, this option allows the separator
139 character to be given, letting rep's user-full-name function return
140 the correct information.
141
142 E.g. some systems have GECOS as a comma-separated list of values,
143 the first of which is the full name. For this case:
144
145 --enable-full-name-terminator=,
146
147