SCM Repository
[diderot] Diff of /trunk/src/compiler/common/rational.sml
Diff of /trunk/src/compiler/common/rational.sml
Parent Directory
|
Revision Log
|
Patch
78 |
val a2 = d1 div d |
val a2 = d1 div d |
79 |
val lcm = a1 * d1 |
val lcm = a1 * d1 |
80 |
in |
in |
81 |
mkRat (a2*n1 + a1*n1, lcm) |
mkRat (a1*n1 + a2*n2, lcm) |
82 |
end |
end |
83 |
|
|
84 |
fun sub (R{num=n1, denom=d1}, R{num=n2, denom=d2}) = let |
fun sub (R{num=n1, denom=d1}, R{num=n2, denom=d2}) = let |
87 |
val a2 = d1 div d |
val a2 = d1 div d |
88 |
val lcm = a1 * d1 |
val lcm = a1 * d1 |
89 |
in |
in |
90 |
mkRat (a2*n1 - a1*n1, lcm) |
mkRat (a1*n1 - a2*n2, lcm) |
91 |
end |
end |
92 |
|
|
93 |
fun mul (R{num=n1, denom=d1}, R{num=n2, denom=d2}) = |
fun mul (R{num=n1, denom=d1}, R{num=n2, denom=d2}) = |
|
Legend:
Removed from v.115 |
|
changed lines |
|
Added in v.116 |
|
|