How to get rid of the recursion in the example below?
I could use a list, but how?
procedure tOptomizer.DoExpression( var CodeTree: pCodeTree); begin if Assigned( CodeTree) then begin DoExpression( CodeTree^.Left); DoExpression( CodeTree^.Right); case CodeTree^.Node.CodeType of ...