On 2021-06-20 9:01 p.m., Brent Hilpert via cctalk wrote:
On 2021-Jun-20, at 7:38 PM, ben via cctech wrote:
On 2021-06-20 8:13 p.m., Toby Thain via cctech wrote:

Tried the Shunting Yard algorithm? But watch out, it was invented by a
quiche eater...

The problem needs backtracking to generate correct code. Stack or 
muilti-register machines don't have this problem with temporaries.
Ben.


The parser generates a tree of the algebraic expression, the tree is 
representative of the evaluation order of the expression, earlier evals lower 
in the tree, the node at the top is the last evaluated. Then walk the tree from 
the bottom up to generate code.

I think code to do this (efficient compiler code generation) has been done like 
a gazillion-billion times since 1960.

Computer science people seem to like to brag about how to parse. Walking a tree does not solve the tree was built in the wrong order.Parenthesis first implies input string re-scanning and text movement.This what I can't seem to find a good algorithm for. FORTRAN II and IV did quite well before all this computer science. FORTRAN solved real world problems, ALGOL has yet to have I/O. LISP still can't be compiled.PASCAL is only educational problems, and C mutated into Monster. JAVA is not open source.

Very little new stuff is on multi-pass parsing.I have a 70's computer design of modest word length (20 bits) that needs 1970's computer science, and 64KB of memory and removable disks.
Ben.

Reply via email to