Comment by guenthert

Comment by guenthert 20 hours ago

0 replies

> Like, is behavior when running a script in "interpreter" mode guaranteed to be the same as when running in "native compiled code"?

The ANSI Common Lisp standard applies to all compliant implementation, regardless of whether they interpret or compile the language. In earlier Lisps there might have been a difference, in Common Lisp that would be a bug.

> At what point does the compiler create an intermediate representation?

??? Are you referring to macro-expansion time?

> Why does SBCL not use LLVM?

Other than for historic reasons, why would it?

> At what point are #-starting words(read macros?) evaluated and how is that different from interpreting to compiling

You're answering your own question. Read macros are evaluated at read time.

I'm not sure whether those questions are really all that relevant to someone just starting to learn the language.

Practical Common Lisp is a fine starting point and Common Lisp The Language (2nd edition) will keep you busy for a looong time.