Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I don’t understand how to work with the intermediate language in such a back-to-front approach, wouldn’t you need to know in advance what pass to implement next so that the input to the current pass matches the output of your next, unimplemented, pass? To me, it seems like the contract is reversed




No, because the intermediate language of the previous step is just the target of the next step, and the target can be anything

E.g. when JavaScript was designed, they didn't need to know that typescript would be invented to know how JavaScript would look.


It sounds to me that Pass 1 is basically an assembly-to-assembly compiler which becomes the target of all the other passes and optimizations.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: