feat: ##Inf/##-Inf/##NaN literals, infinite?/NaN?, fix intval? for infinity
The reader now reads the symbolic float values ##Inf, ##-Inf and ##NaN. Added infinite? and NaN? predicates. Fixed intval? to exclude infinity (floor(inf)=inf but inf isn't integer-valued), so float?/double? are true for ##Inf and int?/pos-int?/nat-int?/neg-int? are false for it. This unblocked many number-test files whose forms previously failed to READ (##Inf/##NaN literals), so clojure-test-suite jumped from 2241 to 2539 assertions and pass 1719 -> 1955. Baseline raised to 1900. NaN_qmark now runs. float?/double? on integer-valued doubles (1.0) remain false: Janet represents an integer and an integer-valued double identically, so they're inherently indistinguishable — documented in the README Numbers section. spec: numbers/floats-&-symbolic-values (15 cases). jpm test green. Closes jolt-fy8 (fixable parts; int-vs-float ambiguity is a documented divergence).
This commit is contained in:
parent
09532dac05
commit
03652dce5d
6 changed files with 41 additions and 5 deletions
|
|
@ -18,7 +18,7 @@
|
|||
|
||||
# Baseline: assertions Jolt currently passes across the suite. Raise as Jolt
|
||||
# improves so a regression (previously-passing assertion breaking) is caught.
|
||||
(def baseline-pass 1650)
|
||||
(def baseline-pass 1900)
|
||||
# A file is "clean" when it ran with zero failures AND zero errors.
|
||||
(def baseline-clean-files 22)
|
||||
# Per-file wall-clock budget (seconds). Normal files finish in well under 1s;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue