From 198b1a0d56510f8ac75af900c8ec4338223f3b43 Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Sat, 14 Jun 2008 04:01:07 -0500 Subject: [PATCH] Clean up quadratic --- extra/math/quadratic/quadratic.factor | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/extra/math/quadratic/quadratic.factor b/extra/math/quadratic/quadratic.factor index 2253582623..60929b92cb 100644 --- a/extra/math/quadratic/quadratic.factor +++ b/extra/math/quadratic/quadratic.factor @@ -3,13 +3,13 @@ USING: kernel math math.functions ; IN: math.quadratic -: monic ( c b a -- c' b' ) tuck / >r / r> ; +: monic ( c b a -- c' b' ) tuck [ / ] 2bi@ ; : discriminant ( c b -- b d ) tuck sq 4 / swap - sqrt ; -: critical ( b d -- -b/2 d ) >r -2 / r> ; +: critical ( b d -- -b/2 d ) [ -2 / ] dip ; -: +- ( x y -- x+y x-y ) [ + ] 2keep - ; +: +- ( x y -- x+y x-y ) [ + ] [ - ] 2bi ; : quadratic ( c b a -- alpha beta ) #! Solve a quadratic equation ax^2 + bx + c = 0 @@ -17,4 +17,4 @@ IN: math.quadratic : qeval ( x c b a -- y ) #! Evaluate ax^2 + bx + c - >r pick * r> roll sq * + + ; + [ pick * ] dip roll sq * + + ;