A few thoughts on interpreters vs compilers: - somewhere, there has to be an interpreter -- the x86 chip in my laptop is interpreting the x86 code that Racket generates. - there could certainly be a more direct AST-based interpreter for (fully-expanded) Racket. My work on Pycket involved writing such an interpreter, for example.
The best way to distinguish compilers from interpreters is that a compiler takes a program and produces another program, whereas an interpreter takes a program (along with some input) and produces an answer. Sam On Mon, Jul 27, 2020 at 12:35 PM zeRusski <[email protected]> wrote: > > Thank you for this fantastic reply Sam! I now think I had a very naive model > of "interpreter" when I asked the question. My CS degree from the nowhere > university has it that language interpreters walk the tree and you know > "execute" be it in the host language or generating native code. I feel a bit > stupid now. Technically you're absolutely right - there is an interpreter for > the bytecode (or whatever), so duh. But there are also a bunch of compilation > steps in between. I am now completely lost as to what constitutes a compiler > and what makes an interpreter. I always thought of interpreters as something > I encountered in PLAI. I remember reading some old paper abound "fast > interpreters" and all of them implemented a virtual machine they "compiled" > to and I was lost then - how's that not a compiler - as I am lost now. > > -- > You received this message because you are subscribed to the Google Groups > "Racket Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/racket-users/b183ae65-524d-4e70-9bee-ce0531bf21feo%40googlegroups.com. -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/CAK%3DHD%2BZ0G-iYDYAreU2qg1vC%3DDhT777%3DsE2kqT6QC0iQyD3JwQ%40mail.gmail.com.

