|
|
BSD 4.3
procedure fix(exp)
while exp ?:= 2(="(",tab(bal(')')),pos(-1))
return lassoc(exp,'+-' | '*/') | rassoc(exp,'^') |
func(exp) | exp
end
procedure func(exp)
return exp ? tab(upto('(') + 1) || fix(tab(-1)) || tab(0)
end
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.