Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
My first fifteen compilers (2019) (sigplan.org)
73 points by azhenley 3 days ago | hide | past | favorite | 9 comments




(2017)

At the time (387 points, 76 comments) https://news.ycombinator.com/item?id=15153956 https://archive.is/gUVNw

2019 edit (388 points, 78 comments) https://news.ycombinator.com/item?id=20408011


Every browser can smooth scroll, please stop doing this in JS, manually.

I turn mine off, then you force it on me, and CTRL+F4 is an immediate reflex.


You should report it to sigplan.org. Complaining about it here won't make any difference.

There's also https://news.ycombinator.com/newsguidelines.html -

> Please don't complain about tangential annoyances—e.g. article or website formats, name collisions, or back-button breakage. They're too common to be interesting.


> CTRL+F4

What does this do on your computer? On mine it changes the workspace, which makes not much sense in context.


Closes browser tab

Which browser is that? Does it support C-W ?

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: