Commit graph

1951 commits

Author SHA1 Message Date
Alex Shinn
156505e798 The environment chain lookup should ignore undefined cells if there
are defined cells available.  This avoids previously undefined values
blocking an export-all import.
2013-10-14 08:10:34 +09:00
Alex Shinn
83262a9dfa Adding pretty-printing format combinators. 2013-10-13 19:49:15 +09:00
Alex Shinn
eebe3f0448 Always normalize bignum results in sexp_mul. 2013-10-13 07:02:22 +09:00
Alex Shinn
d983a5571f Patch from Lorenzo for better handling of non-normalized bignums. 2013-10-13 06:55:48 +09:00
Alex Shinn
3f13fd485e Adding missing (c-system-include "sys/file.h") for flock constants.
Fixes issue #199.
2013-10-10 16:42:28 +09:00
Alex Shinn
7a5f317811 Fixing bug in the non-strict top-level identifier matching logic.
Matching worked when both bindings were missing, and when both
bindings were present at the top-level but different.  The case
when only one top-level binding was present wasn't handled correctly.
Local lexical matching remains unchanged.
Fixes issue #198.
2013-10-10 16:41:01 +09:00
Alex Shinn
363d2bda24 Also reset the context env when updating interaction-environment.
Fixes issue #200.
2013-10-10 16:31:28 +09:00
Alex Shinn
3995c4505f Writing out the pointer value of unwritable types. 2013-10-10 16:27:30 +09:00
Alex Shinn
67c9e7ca7c (chibi log) only needs (chibi show base), like most libraries which
provide a combinator formatting interface.
2013-10-08 21:43:27 +09:00
Alex Shinn
d80c7ff152 Adding customizable logging library with combinator formatting. 2013-10-08 21:40:06 +09:00
Alex Shinn
3ce042bba1 Adding initial version of (chibi show) successor to the fmt combinator formatting library. 2013-10-08 21:31:20 +09:00
Alex Shinn
952d665860 Adding build rules for chibi/monad/... 2013-10-08 21:28:32 +09:00
Alex Shinn
505c608679 Adding initial environment monad for use in combinator formatting. 2013-10-08 21:26:49 +09:00
Alex Shinn
a887b49e0c make-syntactic-closure generates a copy of existing closures, to allow for syntax generated syntax. 2013-10-07 18:57:43 +09:00
Alex Shinn
03b4ccc848 Writing out syntactic closures in the simple writer. 2013-10-07 18:54:04 +09:00
Alex Shinn
39eba86d49 Don't warn on import redefining an undefined value. 2013-10-04 16:45:50 +09:00
Alex Shinn
f9d73ddc30 Adding the -R<module> option to run "main" procedures directly from modules,
analogous to Python's -m.  With no argument, runs chibi.repl.
2013-10-04 12:04:50 +09:00
Alex Shinn
e037027fcf Fixing directory-fold to return knil on non-existing directories.
Fixing file-regular?/directory?/... shortcut tests to return #f
for non-existent files instead of a confusing error.
2013-10-04 10:42:49 +09:00
Alex Shinn
8b15884658 Supporting (chibi repl) advise from main.c. 2013-10-03 23:34:17 +09:00
Alex Shinn
3b7a042d61 Adding repl-advise-exception, currently advising potential modules exporting unbound indentifiers. 2013-10-03 12:42:18 +09:00
Alex Shinn
7004feed5e Adding closedir call to directory-fold-tree. 2013-10-03 12:30:24 +09:00
Alex Shinn
2d8371c258 Adding missing changes to available module introspection from 1729:f1e5f235d684. 2013-10-03 12:14:59 +09:00
Alex Shinn
fc2ca6181f Adding introspection to available unloaded modules. 2013-10-03 12:14:31 +09:00
Alex Shinn
daf5478824 Fixing failed opendir handling from 1725:739f90999b17. 2013-10-03 12:12:16 +09:00
Alex Shinn
d7cda433bc Adding a shortcut for -xscheme.base. 2013-10-03 12:01:54 +09:00
Alex Shinn
db32409452 If unbound, using current-output-port in place of current-error-port for -x languages.
Allows -xscheme.r5rs.
2013-10-03 11:36:39 +09:00
Alex Shinn
3c8c1fe74b Handling case where opendir fails in directory-fold-tree. 2013-10-03 09:37:33 +09:00
Alex Shinn
8ddee1f704 Adding missing "extern" from SEXP_API definition.
Fixes issue #197.
2013-10-03 09:34:43 +09:00
Alex Shinn
179aea56a0 Fix potential memory overwrite in sexp_bignum_fxmul.
Patch from Lorenzo.
2013-10-02 10:53:01 +09:00
Alex Shinn
20aa69033c Adding file-lock interface to flock(2) to (chibi filesystem). 2013-10-01 15:14:17 +09:00
Alex Shinn
82752174c2 Fixing env initialization for -m. Needed for -mchibi.repl -e'(repl)' to
use the default (scheme base) language.
2013-09-30 12:04:59 +09:00
Alex Shinn
216bfb87c9 containing-module should account for the fact the a module's environment may not yet be set. 2013-09-30 10:57:07 +09:00
Alex Shinn
a54c6c4e98 The big switch to (scheme base) as the default interaction-environment. 2013-09-30 10:53:21 +09:00
Alex Shinn
7a3f0a7362 Adding special handling for final sigma in (scheme char) case mappings.
Fixes issue #147.
2013-09-29 15:09:21 +09:00
Alex Shinn
3683e8cbdc Adding special case (non-1-to-1) char case mappings. 2013-09-29 14:45:51 +09:00
Alex Shinn
6094e5fb12 Adding string and symbol quote delimiters to list of read delimiters in (scheme read). 2013-09-29 13:42:24 +09:00
Alex Shinn
ae1f0fd76d Reverting patch from Peter Michaux. 2013-09-29 13:26:59 +09:00
Alex Shinn
67e50cefaa Exporting conf-source 2013-09-29 13:26:13 +09:00
Alex Shinn
87624c68ab Patch from Per Bothner to verify new boolean literals with delimiters. 2013-09-29 13:25:46 +09:00
Alex Shinn
368191918b Patch from Peter Michaux to allow reordering the heap struct
so the data pointer is not the last element.
2013-09-29 13:14:34 +09:00
Alex Shinn
5b879a2b55 Adding -? to print help with no "unknown option" error message. 2013-09-29 11:17:38 +09:00
Alex Shinn
008d13b294 Making new -x handling work with -e/-p.
Optimizing the -xchibi.primitive case to use -q (i.e. no file I/O).
2013-09-29 11:15:29 +09:00
Alex Shinn
5e4c6a8848 Removing the deprecated (scheme) module. 2013-09-29 11:06:09 +09:00
Alex Shinn
86d9957ae9 Making sexp_make_primitive_env available from Scheme.
Adding the (chibi primitive) module to access this directly.
2013-09-29 11:05:54 +09:00
Alex Shinn
eb4adcc9dd Better -x handling. If the language defines the standard port
parameters but doesn't bind them, we bind them to stdin/stdout/stderr.
If the parameters are not defined at all, we abort.
2013-09-29 11:04:20 +09:00
Alex Shinn
f21b4e3025 Adding #! line to echo-server.scm. 2013-09-28 13:05:23 +09:00
Alex Shinn
fbfe1f1b5b Adding 'reloader?: keyword to memoize-file-loader. 2013-09-26 19:57:20 +09:00
Alex Shinn
b27143a96c Fixing list-copy for improper lists. 2013-09-26 16:09:39 +09:00
Alex Shinn
ddfdd04a8f Additional list-copy tests from Per Bothner. 2013-09-26 16:07:56 +09:00
Alex Shinn
d0360178f1 Patch from Per Bothner for => in non-terminal case clauses. 2013-09-25 09:27:38 +09:00