From 09ef904d323208408d428ed65e64b19632f34c9f Mon Sep 17 00:00:00 2001 From: Bob Nystrom Date: Sat, 27 Aug 2016 17:25:32 -0700 Subject: [PATCH] Use DBL_MIN instead of DBL_EPSILON for Num.smallest. --- doc/site/modules/core/num.markdown | 4 ++-- src/vm/wren_core.c | 2 +- test/core/number/largest.wren | 1 + test/core/number/smallest.wren | 1 + 4 files changed, 5 insertions(+), 3 deletions(-) create mode 100644 test/core/number/largest.wren create mode 100644 test/core/number/smallest.wren diff --git a/doc/site/modules/core/num.markdown b/doc/site/modules/core/num.markdown index e6285cfc..4ed78f26 100644 --- a/doc/site/modules/core/num.markdown +++ b/doc/site/modules/core/num.markdown @@ -15,11 +15,11 @@ The value of π. ### Num.**largest** -The highest representable value of `Num`. +The largest representable numeric value. ### Num.**smallest** -The difference between 1.0 and the next representable value for `Num`. +The smallest positive representable numeric value. ## Methods diff --git a/src/vm/wren_core.c b/src/vm/wren_core.c index 075ab861..5f1a2007 100644 --- a/src/vm/wren_core.c +++ b/src/vm/wren_core.c @@ -691,7 +691,7 @@ DEF_PRIMITIVE(num_largest) DEF_PRIMITIVE(num_smallest) { - RETURN_NUM(DBL_EPSILON); + RETURN_NUM(DBL_MIN); } DEF_PRIMITIVE(num_toString) diff --git a/test/core/number/largest.wren b/test/core/number/largest.wren new file mode 100644 index 00000000..ace10c82 --- /dev/null +++ b/test/core/number/largest.wren @@ -0,0 +1 @@ +System.print(Num.largest) // expect: 1.7976931348623e+308 diff --git a/test/core/number/smallest.wren b/test/core/number/smallest.wren new file mode 100644 index 00000000..080e95c4 --- /dev/null +++ b/test/core/number/smallest.wren @@ -0,0 +1 @@ +System.print(Num.smallest) // expect: 2.2250738585072e-308