Commit graph

244 commits

Author SHA1 Message Date
Alex Shinn
53cecd82b2 Forgot quotes. 2013-07-08 22:12:10 +09:00
Alex Shinn
ac35703685 Adding let-keywords[*]. 2013-07-08 22:09:42 +09:00
Alex Shinn
fef8c1a459 Adding auto-help facilities. 2013-07-07 18:30:46 +09:00
Alex Shinn
925118b9f3 Adding thread-list to get a list of all running threads.
This conses a new list for safety (not sharing with the scheduler)
and so is not a cheap operation if many threads are running.
2013-07-07 16:38:28 +09:00
Alex Shinn
050b353f34 Adding missing eof-object procedure.
Fixes issue #183.
2013-06-25 22:22:01 +09:00
Alex Shinn
6f1c038989 fixing bug in chained keys 2013-06-20 23:29:07 +09:00
Alex Shinn
74c121f2b2 Updating ephemerons use a context local type id.
Disabling weak vectors for now.
2013-06-17 22:02:55 +09:00
Alex Shinn
d7db3effa8 The guard-like macro in the core language is now called protect.
This is the recommended syntax for error-handling in Chibi-specific
programs, since it's not possible to get stack traces when using
R[67]RS guard.  guard is defined separately and according to the
standard in (scheme base).
2013-06-15 18:43:44 +09:00
Alex Shinn
053f293e5e Refactoring repl. 2013-06-15 18:15:50 +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
c81f3ded3c Adding environment: option to repl.
Fixes issue #180.
2013-06-15 12:40:33 +09:00
Alex Shinn
d3cc4de281 Fixing typo in integer case of inexact numerator/denominator.
Fixes issue #179.
2013-06-11 21:01:38 +09:00
Alex Shinn
e74319cad3 Adding procedure-docs and print-procedure-docs. 2013-06-10 22:11:09 +09:00
Alex Shinn
5f628c8e72 Max and min should coerce to inexact if any argument if inexact.
Fixes issue #178.
2013-06-04 22:01:13 +09:00
Alex Shinn
bb00cdaf1b Default test comparator should require same exactness. 2013-06-04 21:58:32 +09:00
Alex Shinn
3704289138 Handling raw numbers in sxml format. 2013-06-04 06:14:46 +09:00
Alex Shinn
eed67d5872 Render parameter in print-module-[binding-]docs can be made #f for the default. 2013-06-04 06:08:02 +09:00
Alex Shinn
95e92815ae Adding @help to (chibi repl) to lookup online docs. 2013-06-04 05:39:56 +09:00
Alex Shinn
d917dfcd72 Factoring print-module-docs and print-module-binding-docs into (chibi doc). 2013-06-04 04:49:49 +09:00
Alex Shinn
95fff8f056 Checking for a non-empty list in expand-docs. 2013-06-04 04:30:51 +09:00
Alex Shinn
a24c76a02d Better error handling for parsers. 2013-06-04 04:26:01 +09:00
Alex Shinn
65ed450d7a Supporting macro source info in docs, more robust line range checking. 2013-06-02 19:45:25 +09:00
Alex Shinn
ea5a424ede Refactoring most of chibi-doc tool into the (chibi doc) module. 2013-06-02 18:46:27 +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
5797ac661a Fixing offsets for bytecode accessors. 2013-06-01 18:55:04 +09:00
Alex Shinn
b77e4397d7 Exporting sockaddr and addrinfo. 2013-05-30 08:09:05 +09:00
Alex Shinn
9c622fef67 Renaming dynamic-wind point routines to avoid likely user names. 2013-05-29 23:32:54 +09:00
Alex Shinn
b10cb94e17 Reset the current parameters in child threads.
This is simple and fast.  Inheriting all threads causes immediate
problems with exception handlers, and in general should use
copy-on-write behavior so that child threads can't affect parents.  If
we make an eager copy of the parameters we can filter out just the
exception handler, but then thread creation is expensive.  The ideal
design might allow selectively enabling parameter inheritance.
2013-05-29 20:40:48 +09:00
Alex Shinn
a12df113c5 Conditionally define Complex and Ratio types. 2013-05-28 22:51:02 +09:00
Alex Shinn
86cc80f67f Patch from Lorenzo to fix previous incomplete patch. 2013-05-28 19:53:14 +09:00
Alex Shinn
dde47a7846 Setting new thread's dynamic wind state to a fresh root. 2013-05-27 22:23:54 +09:00
Alex Shinn
99c8992207 make-thread no longer needs to reset the dynamic continuation 2013-05-26 08:58:19 +09:00
Alex Shinn
2cb9d2237f Better error message for invalid args to sorted?. 2013-05-12 10:31:30 +09:00
Alex Shinn
74775675fc Fixing sort on vectors for comparators other than <.
Also applying the dups fix analog to 0d36042bb1c6 for non-< comparators.
2013-05-12 10:30:38 +09:00
Alex Shinn
59c3171c39 Partition needs to split on <= to handle dups properly. 2013-05-11 13:39:36 +09:00
Alex Shinn
908be71b17 Reverting previous sorted? change. 2013-05-11 13:02:30 +09:00
Alex Shinn
5db2afb02d Extra gc preservation. 2013-05-11 12:58:20 +09:00
Alex Shinn
7a08f86b3d sorted? should support <= 2013-05-11 12:41:51 +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
83b320a301 Adding parse-binary-op utility to (chibi parse common). 2013-05-03 00:12:44 +09:00
Alex Shinn
d6c20873e4 Fixing bug in test-equal? returning numeric results for non-real expects. 2013-05-02 23:52:37 +09:00
Alex Shinn
f8a5f7e004 exact-integer-sqrt should continue the babylonian method in scheme.
The estimate given by the C code could be off by a large margin when
the result is inexact, converging far too slowly if we use simple
increments in Scheme.
2013-04-14 04:59:49 +00:00
Alex Shinn
2e63b2be00 Using non-mutating tree of dynamic-wind state for thread safety. 2013-04-07 23:59:41 +09:00
Alex Shinn
41bf531485 Adding various environment and core AST accessors needed for the pure-scheme eval. 2013-04-07 20:10:42 +09:00
Alex Shinn
dcd65cc9da Using cond-expand for faster match-check-ellipsis and match-check-identifier in Chibi. 2013-04-05 20:36:40 +09:00
Alex Shinn
242ab2c8e6 Adding an explicit error for record rtd and constructor conflicts. 2013-04-05 20:22:46 +09:00
Alex Shinn
0f723c17ea Alternate guard form - evaluate the guard clauses in the continuation of the raise.
We need to override the current-exception-handler and still pass a thunk to be
applied on return, but this allows us to print stack traces inside guards.
2013-04-03 00:18:58 +09:00
Alex Shinn
af8aed4c5a string-split on the empty string is null, on a single space is two empty strings 2013-04-02 22:20:41 +09:00
Alex Shinn
98bad7bc63 Aligning line wrap in nested test groups. 2013-04-01 23:31:19 +09:00
Alex Shinn
95215e9228 Adding warning to remind people to (import (scheme base)). 2013-04-01 21:55:18 +09:00