Tropical algebra overloading: Difference between revisions
Content added Content deleted
m (Added language identifier.) |
(→{{header|RPL}: add header + format) |
||
Line 1,011: | Line 1,011: | ||
</pre> |
</pre> |
||
=={{header|REXX}}== |
|||
RPL does not support operator overloading so we need to use functions instead. As all stack-driven languages, RPL requires the user to deal with operator precedence. |
RPL does not support operator overloading so we need to use functions instead. As all stack-driven languages, RPL requires the user to deal with operator precedence. |
||
MAXR EVAL ' |
MAXR EVAL '<span style="color:green>Inf</span>' STO |
||
≪ 1 3 '''START''' ROT EVAL '''NEXT''' |
≪ 1 3 '''START''' ROT EVAL '''NEXT''' |
||
'''IF''' DUP ABS |
'''IF''' DUP ABS <span style="color:green>Inf</span> == '''THEN''' SIGN '<span style="color:green>Inf</span>' * '''END''' |
||
≫ ‘ |
≫ ‘<span style="color:blue>TropOp</span>’ STO |
||
≪ ≪ MAX ≫ |
≪ ≪ MAX ≫ <span style="color:blue>TropOp</span> ≫ ‘<span style="color:blue>TPLUS</span>’ STO |
||
≪ ≪ + ≫ |
≪ ≪ + ≫ <span style="color:blue>TropOp</span> ≫ ‘<span style="color:blue>TMULT</span>’ STO |
||
≪ ≪ * ≫ |
≪ ≪ * ≫ <span style="color:blue>TropOp</span> ≫ ‘<span style="color:blue>TPOWR</span>’ STO |
||
2 -2 |
2 -2 <span style="color:blue>TMULT</span> |
||
-0.001 |
-0.001 -<span style="color:green>Inf</span> <span style="color:blue>TPLUS</span> |
||
0 -<span style="color:green>Inf</span> <span style="color:blue>TMULT</span> |
|||
0 '-'''Inf'''' '''TMULT''' |
|||
1.5 -1 |
1.5 -1 <span style="color:blue>TPLUS</span> |
||
0.5 0 |
0.5 0 <span style="color:blue>TMULT</span> |
||
5 7 <span style="color:blue>TPOWR</span> |
|||
8 7 '''TPLUS''' 5 '''TMULT''' |
|||
8 7 <span style="color:blue>TPLUS</span> 5 <span style="color:blue>TMULT</span> |
|||
5 8 '''TMULT''' 5 7 '''TMULT TPLUS''' |
|||
5 8 <span style="color:blue>TMULT</span> 5 7 <span style="color:blue>TMULT</span> <span style="color:blue>TPLUS</span> |
|||
{{out}} |
{{out}} |
||
<pre> |
<pre> |
||
8: 0 |
|||
7: -0.001 |
|||
6: '-Inf' |
|||
5: 1.5 |
|||
4: -0.5 |
|||
3: 35 |
|||
2: 13 |
2: 13 |
||
1: 13 |
1: 13 |