diff --git a/core/math/parser/parser-tests.factor b/core/math/parser/parser-tests.factor index aad87ca995..0fb2559854 100755 --- a/core/math/parser/parser-tests.factor +++ b/core/math/parser/parser-tests.factor @@ -108,3 +108,6 @@ unit-test [ -1.0/0.0 ] [ "-1/0." string>number ] unit-test [ "-0.0" ] [ -0.0 number>string ] unit-test + +[ "-3/4" ] [ -3/4 number>string ] unit-test +[ "-1-1/4" ] [ -5/4 number>string ] unit-test diff --git a/core/math/parser/parser.factor b/core/math/parser/parser.factor index a126bbea8e..0134693761 100755 --- a/core/math/parser/parser.factor +++ b/core/math/parser/parser.factor @@ -105,7 +105,7 @@ GENERIC# >base 1 ( n radix -- str ) base) ( n -- str ) radix get >base ; +: (>base) ( n -- str ) radix get positive>base ; PRIVATE> @@ -123,7 +123,7 @@ M: integer >base M: ratio >base [ dup 0 < negative? set - 1 /mod + abs 1 /mod [ dup zero? [ drop "" ] [ (>base) sign append ] if ] [ [ numerator (>base) ]