Alex Shinn
8ddee1f704
Adding missing "extern" from SEXP_API definition.
...
Fixes issue #197 .
2013-10-03 09:34:43 +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
f56c89fbc1
Documentation clarification on the arguments to sexp_alloc_tagged from Lorenzo.
2013-09-24 15:51:29 +09:00
Alex Shinn
ca6f2e07cf
Switching SEXP_USE_SEND_FILE to a whitelist for BSD and Linux,
...
instead of a blacklist. Fixes issue #192 .
2013-09-14 21:42:11 +09:00
Alex Shinn
fd9e9b5bf1
Replacing exact, inexact opcodes with primitive functions.
2013-09-08 17:48:38 +09:00
Alex Shinn
d32cc99cc1
Adding set-current-environment! and using it in the pure-Scheme load.
...
This is necessary if the loaded file uses import.
2013-09-02 21:05:42 +09:00
Alex Shinn
7a27341ecd
Adding initial send-file interface.
2013-08-18 18:36:24 +09:00
Alex Shinn
a6e71e47b8
Adding port-fileno.
2013-08-18 17:45:23 +09:00
Alex Shinn
a62d82e048
Proper, general fix for Boehm for sexp_read_float_tail.
2013-07-28 19:11:12 +09:00
Alex Shinn
3fe7b71519
CHIBI_MODULE_PATH defaults to ./lib:., but these paths aren't
...
hardcoded anymore.
2013-07-28 19:09:05 +09:00
Alex Shinn
6dea74036a
Making C string port API names match the Scheme side.
2013-07-21 15:24:04 +09:00
Alex Shinn
025f03fde6
sexp_string_size and sexp_string_length both return sexp_uint_t.
2013-07-21 15:03:22 +09:00
Alex Shinn
13b540418e
C-level string API redesign with cursor support.
...
s/sexp_string_length/sexp_string_size/
Make sexp_string_ref/sexp_string_set Unicode aware.
Provide cursor level alternatives for efficiency.
Document all of this.
2013-07-21 14:59:51 +09:00
William Light
34adcd3b19
Implement SEXP_MAX_ANALYZE_DEPTH
...
This fixes issue #89 .
---
eval.c | 90 ++++++++++++++++++++++++++----------------------
include/chibi/features.h | 4 +++
2 files changed, 53 insertions(+), 41 deletions(-)
2013-06-17 21:09:05 +09:00
Alex Shinn
83fb186edc
Wrapping continuable exceptions in specially tagged exceptions rather than pairs.
...
This way C functions that check for and print exceptions support them
automatically. Notably continuable errors in macro expansions, will had
temporarily been suppressed, are printed again.
2013-06-15 17:47:37 +09:00
Alex Shinn
1736a8306b
Adding set-port-line! and using it in the pure Scheme load to preserve source info.
2013-06-02 10:44:10 +09:00
Alex Shinn
a49f14d011
Adding currently immutable (current-module-path).
2013-05-31 23:39:56 +09:00
Alex Shinn
2b5f8ea007
Adding -s option to escalate warnings to errors.
...
Fixes issue #107 .
2013-05-31 23:31:03 +09:00
Alex Shinn
9ed486dbe3
Adding sexp_maybe_wrap_error utility to pass exceptions from the FFI without raising.
...
Fixes issue #156 .
2013-05-29 23:37:30 +09:00
Alex Shinn
13f9d0f8d0
Fixing SRFI-95 sort for inexacts differing only in the fractional part
...
(reported by Alan Watson).
Also adding support for complex and ratios.
2013-05-11 12:34:16 +09:00
Alex Shinn
98863f53cb
Adding detection of 64bit for powerpc (patch from Stephen Lewis).
2013-04-24 23:43:16 +09:00
Alex Shinn
63a365f214
Factoring out generate opcode and exporting it.
2013-04-07 20:09:39 +09:00
Alex Shinn
f4b42132a3
Making sexp_env_cell_define available.
2013-04-07 17:08:56 +09:00
Alex Shinn
a61cebb1e9
Thread parameters are still needed when threads are disabled.
2013-02-27 09:04:56 +09:00
Alex Shinn
20c62ffe4a
The global ABI error object needs to be an immediate, since if
...
the ABI is incompatible we can't even necessarily refer to a
global from within the bad library.
2013-02-10 16:38:18 +09:00
Alex Shinn
55df642dab
Better initial defaults for equality bounds checking.
2013-01-26 23:42:22 +09:00
Alex Shinn
5ab2849d61
Removing useless term from private macro.
2013-01-23 23:34:28 +09:00
Alex Shinn
cdeaef55d3
7 is a nicer number than 6
2013-01-23 23:11:55 +09:00
Alex Shinn
b42379539d
Fixing termination condition in certain bignum sqrts, handling negative inputs.
2013-01-03 23:49:31 +09:00
Alex Shinn
7ae254fc28
More accurate square roots for bignums - compute via iteration rather
...
than approximation via flonums for very large bignums.
2012-12-22 18:06:22 +09:00
Alex Shinn
cdd337f3aa
Switching to using a union instead of type-cast to get at the bits
...
of a flonum for eqv? comparison.
Fixes issue #164 .
2012-12-22 03:28:58 +00:00
Bakul Shah
9b0f9c73f2
fix plan9 breakage
2012-11-10 15:16:00 -08:00
Alex Shinn
41c80d06ca
Maybe-null patch for strings in chibi-ffi from Lorenzo.
2012-11-10 20:56:27 +09:00
Alex Shinn
4f554499f8
char-ready? shouldn't block, should return #t on EOF
2012-10-21 18:10:45 +09:00
Alex Shinn
9aa03c0a09
Updating eqv? definition (from pre-bignum days) to latest R7RS definition.
2012-10-17 20:53:56 +09:00
Alex Shinn
74d0980b82
Adding file-error? and read-error? predicates.
2012-10-14 23:27:16 +09:00
Alex Shinn
7b31ba7685
disabling bidir ports by default
2012-10-09 21:07:41 +09:00
Alex Shinn
2c5522dfff
Don't unwrap syntatic closures in top-level defines by default.
2012-10-01 22:56:21 +09:00
Alex Shinn
9da98bd68d
Finalizing stream/fd backed ports will properly flush them.
...
However, don't try to flush string/custom ports which could result in alloc during gc.
2012-09-23 23:28:09 +09:00
Alex Shinn
e562cc0be3
Incorporating Alan Watson's TAI time library.
2012-08-17 10:04:37 +09:00
Alex Shinn
93ba0926a7
Build fixes for plan9. Moving individual object files out of opt/ since plan9 mkfiles have issues with these.
2012-08-16 16:04:02 +09:00
Alex Shinn
b40370be52
thread-join! now returns the result or raises the exception of the joined thread
2012-08-15 21:23:39 +09:00
Alex Shinn
90ba17a21a
s/strcmp/strncmp for abi compatibility checks
2012-07-23 05:32:55 +09:00
Alex Shinn
275bf31b13
adding optional thread debugging output
2012-07-21 17:28:09 +09:00
Alex Shinn
57b2bc281d
apply opcode is now tail-recursive - calling it in a non-tail position is an error
2012-07-18 21:34:53 +09:00
Alex Shinn
016560e5fe
Additional OOM checks - harder but still not impossible to segfault on OOM.
2012-07-17 23:40:16 +09:00
Alex Shinn
6de7d5621d
Keeping track of the maximum stack depth a procedure needs for accurate stack checks
...
(fixes bug #130 ). Done in conjunction with code generation refactoring, so that context
objects temporarily use their specific slot instead of having space for useful fields
at runtime.
2012-07-16 16:23:54 +09:00
Alex Shinn
386b798b35
disabling placeholder digits by default
2012-07-11 22:08:10 +09:00
Alex Shinn
c063dadd2e
build fixes for global symbols and vm profiling
2012-07-10 22:42:31 +09:00
Alex Shinn
3e79138e21
Various fixes for better debug output.
...
* Associate file/line source info with corresponding bytecode offset.
* Fixes for losing source info after macro expansion and simplification.
* Fix for showing the source info of the calling procedure of an error.
2012-07-07 15:26:08 +09:00