1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-21 05:00:47 -08:00
Commit graph

26 commits

Author SHA1 Message Date
Gareth Rees
e79e0ee1dd Need to synchronize stdout and stdin for the benefit of windows.
Copied from Perforce
 Change: 186516
 ServerID: perforce.ravenbrook.com
2014-06-12 11:22:55 +01:00
Gareth Rees
f025b00534 Turn on -wunreachable-code for gcc and clang.
Remove unreachable code:
* No need to have different debug options or structured allocation classes for different platforms.
* Don't use STATISTIC_BEGIN, use STATISTIC_STAT.
* #ifdef away the unused code in zmess.c for testing ControlAlloc failure.
* Remove unused code from the example Scheme interpreter.

Copied from Perforce
 Change: 185089
 ServerID: perforce.ravenbrook.com
2014-03-30 14:26:02 +01:00
Gareth Rees
37e3e2dfac Suppress "variable may be used uninitialized" warnings.
Copied from Perforce
 Change: 182545
 ServerID: perforce.ravenbrook.com
2013-06-05 16:44:35 +01:00
Gareth Rees
341783a70c Remove $id$: this causes sphinx to wrongly think that the download has changed.
Copied from Perforce
 Change: 181165
 ServerID: perforce.ravenbrook.com
2013-03-18 15:08:15 +00:00
Richard Brooksby
0ff56c73fd Fixing typos in comments.
Copied from Perforce
 Change: 180959
 ServerID: perforce.ravenbrook.com
2013-02-19 16:52:44 +00:00
Gareth Rees
4133528ded Avoid warnings under gcc:
* Use <errno.h> instead of "extern int errno;".
* Can't cast function pointer to object pointer.
* GCC's dataflow analysis wrongly thinks "end" can be used uninitialized.

Copied from Perforce
 Change: 180474
 ServerID: perforce.ravenbrook.com
2012-11-15 11:35:33 +00:00
Gareth Rees
323e12294f Merge documentation changes.
Copied from Perforce
 Change: 180445
 ServerID: perforce.ravenbrook.com
2012-11-11 20:44:19 +00:00
Gareth Rees
fd03ed65aa Implement "do".
Copied from Perforce
 Change: 180441
 ServerID: perforce.ravenbrook.com
2012-11-11 19:34:46 +00:00
Gareth Rees
95389d01d0 Add (gc) stub to scheme-malloc.c so we can call it from the test suite.
Copied from Perforce
 Change: 180414
 ServerID: perforce.ravenbrook.com
2012-11-08 15:19:46 +00:00
Gareth Rees
2c01ab86cf Operators need to be self-evaluating.
"apply" needs to quote the arguments to avoid them being doubly evaluated.

Copied from Perforce
 Change: 180407
 ServerID: perforce.ravenbrook.com
2012-11-08 13:53:49 +00:00
Gareth Rees
0686f64ff4 Fix bug: actually close the file in entry_close_port.
Copied from Perforce
 Change: 180300
 ServerID: perforce.ravenbrook.com
2012-11-03 17:08:15 +00:00
Gareth Rees
44b734b3a0 Separate the interactive and non-interactive loops for clarity.
New function "load" loads a file; call this in the non-interactive case.
Fix bug: close file handle after loading (if no error).

Copied from Perforce
 Change: 180299
 ServerID: perforce.ravenbrook.com
2012-11-03 15:49:59 +00:00
Gareth Rees
fef5178a3a Improve quasiquote implementation.
Copied from Perforce
 Change: 180295
 ServerID: perforce.ravenbrook.com
2012-11-02 22:38:05 +00:00
Gareth Rees
99d142ffd6 Implement "error".
Copied from Perforce
 Change: 180292
 ServerID: perforce.ravenbrook.com
2012-11-02 19:07:55 +00:00
Gareth Rees
5225f07f06 Implement load.
Copied from Perforce
 Change: 180287
 ServerID: perforce.ravenbrook.com
2012-11-02 16:38:44 +00:00
Gareth Rees
3dcc9800ad Support more kinds of hashtable via make-hashtable.
Fix bug in eqv (character objects now test equal if they represent the same character).

Copied from Perforce
 Change: 180284
 ServerID: perforce.ravenbrook.com
2012-11-02 16:02:05 +00:00
Gareth Rees
700291e07c New constructor make_bool avoids boilerplate.
Hash function takes a length so that it (1) it can support strings containing NULs; (2) it doesn't have to check for NULs so runs a bit faster; and (3) it performs OK on addresses (which often contain zero bytes).
Hash tables have hash and comparison functions.
Implement string=?, make-eqv-hashtable and make-hashtable.

Copied from Perforce
 Change: 180281
 ServerID: perforce.ravenbrook.com
2012-11-02 15:39:19 +00:00
Gareth Rees
a33c71a346 Implement apply.
Copied from Perforce
 Change: 180269
 ServerID: perforce.ravenbrook.com
2012-11-02 12:44:20 +00:00
Gareth Rees
e42bab4f76 Make sure that probe sequence visits all buckets in the hash table by (a) ensuring that hash tables are a power of 2 in size; (b) ensuring that the probe step is odd.
Copied from Perforce
 Change: 180252
 ServerID: perforce.ravenbrook.com
2012-11-02 11:16:10 +00:00
Gareth Rees
bf1480c169 Chatter only if interactive.
Copied from Perforce
 Change: 180251
 ServerID: perforce.ravenbrook.com
2012-11-02 10:58:29 +00:00
Gareth Rees
879231be2d Add non-interactive execution.
Implement list-tail and list-ref.

Copied from Perforce
 Change: 180249
 ServerID: perforce.ravenbrook.com
2012-11-02 10:24:39 +00:00
Gareth Rees
b68fc45c4a Implement string-hash and correct error messages.
Copied from Perforce
 Change: 180244
 ServerID: perforce.ravenbrook.com
2012-11-01 22:07:33 +00:00
Gareth Rees
5b50c401c3 Fix bug in "define": no implied "begin" around function body.
Implement open-output-file, close-input-port, close-output-port, write, write-string, and newline.
Add Scheme test cases.

Copied from Perforce
 Change: 180238
 ServerID: perforce.ravenbrook.com
2012-11-01 18:05:34 +00:00
Gareth Rees
5e275103ed Add more hashtable features, including deletion (which we'll need for weak hashtables).
Copied from Perforce
 Change: 180225
 ServerID: perforce.ravenbrook.com
2012-11-01 14:37:45 +00:00
Gareth Rees
13af2f01a4 Weak hash tables in scheme-advanced.c.
Copied from Perforce
 Change: 180208
 ServerID: perforce.ravenbrook.com
2012-10-31 22:13:46 +00:00
Gareth Rees
5e62407261 Move old scheme to example/scheme/scheme-malloc.c
Provide instructions to build it.

Copied from Perforce
 Change: 180185
 ServerID: perforce.ravenbrook.com
2012-10-31 12:02:11 +00:00
Renamed from mps/manual/source/guide/scheme-before.c (Browse further)