Skip to content

Instantly share code, notes, and snippets.

@tristan
Created February 23, 2010 13:07
Show Gist options
  • Save tristan/312146 to your computer and use it in GitHub Desktop.
Save tristan/312146 to your computer and use it in GitHub Desktop.
diff --git a/src/jvm/clojure/lang/Numbers.java b/src/jvm/clojure/lang/Numbers.java
index 0400208..7d40db4 100644
--- a/src/jvm/clojure/lang/Numbers.java
+++ b/src/jvm/clojure/lang/Numbers.java
@@ -295,6 +295,8 @@ static public Number divide(BigInteger n, BigInteger d){
d = d.divide(gcd);
if(d.equals(BigInteger.ONE))
return reduce(n);
+ else if(d.equals(BigInteger.ONE.negate()))
+ return reduce(n.negate());
return new Ratio((d.signum() < 0 ? n.negate() : n),
(d.signum() < 0 ? d.negate() : d));
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment