[e0aff9] by Christophe Rhodes
open intervals and type derivation
When dealing with open intervals, preserving the openness of a bound in
Modify various coercion and interval functions to include conservatism
 by Nikodemus Siivola
don't unconditionally unparse CHARACTER-SET types into MEMBER types
Doing so means dumping a list containing most of unicode for each
(code-char (+ <const> <(integer 0)>))
which has a derived type (CHARACTER-SET ((<const> . 1114111))).
Instead, pick whichever is more compact, using number of characters
This means that users can see SB-KERNEL:CHARACTER-SET types in
At some point, however, we should document and export SB-EXT:CHARSET
[8a3305] by Nikodemus Siivola
better timeout handling in EXIT and %EXIT-OTHER-THREADS
Account the timeout against all the threads being joined, not each
Also move handling of "main thread exiting even though another
...and one missing #!+sb-doc
[11802a] by Nikodemus Siivola , pushed by Nikodemus Siivola
* Add "Deprecated Interfaces" chapter to the manual.
* Add list of deprecated interfaces along with a policy note to a
* Add a proper deprecation warning for SB-C::MERGE-TAIL-CALLS.
* Fix the deprecation warning for WITH-SPINLOCK. (Accidentally
[2bfd70] by Stas Boukarev
runtime clean up.
coreparse.c: Move #define _BSD_SOURCE up, so that it won't conflict
search.c(search_for_type): Remove unused variable addr.
interrupt.c: Remove double parentheses in if((x==y)).
run-program.c: Include sys/wait.h
[436b2a] by Lutz Euler
Better equidistributed and faster/less consing integer RANDOM.
Up to now the implementation of RANDOM with an integer argument just
Instead generate random integers using an accept-reject loop and change
I took some inspiration from WHN's attempt at an accept-reject loop
Thanks to Christophe Rhodes for reviewing this patch!
The implementation works correctly with both a random chunk size equal
In the generic RANDOM case, fixnum and bignum limits are differentiated:
With a fixnum limit an accept-reject loop on a masked random chunk is
With a bignum limit four cases are differentiated to minimize consing.
In the case of a compile-time constant integer argument (of at most word
 by Lutz Euler
Fix the DEFTRANSFORM of RANDOM for hairy integer types.
With integer types that are neither an interval nor a single known value
Fix this by giving up the transform in these cases.
Add a new file "tests/random.pure.lisp" containing tests for this.
[f0da2f] by Nikodemus Siivola
redesign exiting SBCL
Deprecate QUIT. It occupies an uncomfortable niche between processes
SIGTERM now uses EXIT, and doesn't depend on sessions.
WITH-DEADLINE (:SECONDS NIL :OVERRIDE T) can now be used to ignore
JOIN-THREAD on the main thread now blocks indefinitely instead of
* SB-EXT:EXIT. Always exits the process. Takes keywords :CODE,
* SB-THREAD:RETURN-FROM-THREAD. Normal termination for current
* SB-THREAD:ABORT-THREAD. Abnormal termination for current thread --
* SB-THREAD:MAIN-THREAD-P. Let's you determine if a given thread is
* SB-THREAD:MAIN-THREAD. Returns the main thread object. Convenient
[4ce962] by Nikodemus Siivola
tune bug-981106 test based on the heap size
[661bcd] by Nikodemus Siivola
gencgc: scale generation.bytes_consed_between_gc to number of gens
This means we have by default 5% of total heap usable in the nursery
Fixes lp#991293, regression since
[1a104e] by Nikodemus Siivola
gencgc: i in add_new_area needs to be signed
Regression from 7be8d1462a207bda809cd7553c5d76c6ebc4dda2,
[b61897] by Nikodemus Siivola
fix compiler reader error reporting
Stream slot was left unbound along one leg, which is bad because