Gareth Rees
f47c389a52
Fix indentation of second clause of license.
2020-08-30 10:13:06 +01:00
Gareth Rees
af0f431eda
Use https: instead of http: when linking to the ravenbrook web site.
2020-08-30 10:13:03 +01:00
Peter Jackson
c363af9a7a
Merge remaining changes from earlier licence branch.
...
Copied from Perforce
Change: 197111
2020-08-28 18:05:26 +01:00
Gareth Rees
94e3f8895b
Update xcode project for xcode 10.0.
...
Xcode 10.0 no longer supports building for IA-32, so the MPS can no longer support building for xci3ll using Xcode.
Revise example Scheme interpreter so that it can be compiled even if getopt.h includes unistd.h (as it does on macOS).
Copied from Perforce
Change: 195090
2018-09-18 15:00:45 +01:00
Richard Brooksby
4487895475
Detabifying code and restructuredtext files.
...
Copied from Perforce
Change: 189309
ServerID: perforce.ravenbrook.com
2016-02-18 19:58:13 +00:00
Gareth Rees
cadf609fb8
Catch-up merge from master sources @186519 to branch/2014-05-17/chunk-tree.
...
Copied from Perforce
Change: 186520
ServerID: perforce.ravenbrook.com
2014-06-12 11:43:56 +01:00
Gareth Rees
4e1b1b4f7d
Synchronize stdout and stderr (for the benefit of windows).
...
Copied from Perforce
Change: 186519
ServerID: perforce.ravenbrook.com
2014-06-12 11:37:50 +01:00
Gareth Rees
46d9f74cea
Must fflush stderr too--it's buffered on windows!
...
Copied from Perforce
Change: 186517
ServerID: perforce.ravenbrook.com
2014-06-12 11:28:41 +01:00
Gareth Rees
14addd278e
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
e3a2e6cf77
All versions of the scheme interpreter now take multiple files on the command line.
...
Integrate change 186243 to scheme-{advanced,malloc,boehm}.c.
Copied from Perforce
Change: 186244
ServerID: perforce.ravenbrook.com
2014-05-22 13:16:29 +01:00
Gareth Rees
8c5bb6ae3c
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
a8d6ecdbac
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
2ca54e2eca
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
056b38813d
Fixing typos in comments.
...
Copied from Perforce
Change: 180959
ServerID: perforce.ravenbrook.com
2013-02-19 16:52:44 +00:00
Gareth Rees
59adbdab1c
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
f54b26e6a1
Merge documentation changes.
...
Copied from Perforce
Change: 180445
ServerID: perforce.ravenbrook.com
2012-11-11 20:44:19 +00:00
Gareth Rees
c9ff7ccb2f
Implement "do".
...
Copied from Perforce
Change: 180441
ServerID: perforce.ravenbrook.com
2012-11-11 19:34:46 +00:00
Gareth Rees
b4c529461e
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
c4486a5381
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
3169429b36
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
b191edc1e5
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
4df0a7d528
Improve quasiquote implementation.
...
Copied from Perforce
Change: 180295
ServerID: perforce.ravenbrook.com
2012-11-02 22:38:05 +00:00
Gareth Rees
f4fccc5cef
Implement "error".
...
Copied from Perforce
Change: 180292
ServerID: perforce.ravenbrook.com
2012-11-02 19:07:55 +00:00
Gareth Rees
fb09e1a364
Implement load.
...
Copied from Perforce
Change: 180287
ServerID: perforce.ravenbrook.com
2012-11-02 16:38:44 +00:00
Gareth Rees
ef98f2a9c6
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
d984d32588
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
74494e0a38
Implement apply.
...
Copied from Perforce
Change: 180269
ServerID: perforce.ravenbrook.com
2012-11-02 12:44:20 +00:00
Gareth Rees
1c7c0acc5c
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
54da8d4bc3
Chatter only if interactive.
...
Copied from Perforce
Change: 180251
ServerID: perforce.ravenbrook.com
2012-11-02 10:58:29 +00:00
Gareth Rees
efe5998a62
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
daf132a970
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
f8d48677d0
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
9f43a0a241
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
37c725f76b
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
07782b09d6
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