File:  [CSRG BSD Unix] / 43BSD / contrib / icon / book / f / infix.icn
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 16:12:55 2018 UTC (8 years, 1 month ago) by root
Branches: MAIN, BSD
CVS tags: HEAD, BSD43
BSD 4.3

procedure main()
   while write(infix(read()))
end

procedure infix(exp)
   return (exp ? form(tab(upto('(')),move(1) & tab(bal(',')),
      move(1) & tab(-1))) | exp
end

procedure form(op,arg1,arg2)
   return "(" || infix(arg1) || op || infix(arg2) || ")" 
end

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.