Docs in commit c18c145

@jan

Was reading the SWI-Prolog commit C18r145 and noticed

complex_term() handles operator resolution. This is based on an old book
on compiler design of which I’ve forgotten the name. The idea is to have
two queues, the side queue and the out queue. The number of elements
pushed there is in side_n and out_n. As the side queue may hold
stuff from outer parse steps we have side_p pointing at its top.
side_p is side_n - 1 - |elems-at-start| and SideOp(side_p) is the
top-most operator pushed at the side queue.

This sounds like the Shunting-yard algorithm. Is it the same or a different algorithm?

1 Like

Yes. Thanks for finding. I’ll add a reference to the comment.

1 Like

can i get in touch with you, i need help with a work please

The SWI-Prolog user forum is at https://swi-prolog.discourse.group/

thank you so much for replying to me im going to send the work

can i have your email

thats the work

(Attachment Prolog Python Project (2).docx is missing)