Hacker News new | ask | show | jobs
by lispm 3369 days ago
if a Common Lisp compiler sees a call to cl:aref then it can inline it, without using static flow analysis or similar...
1 comments

I was under the impression that CL compilers already had to do a lot of fairly complicated static analysis to achieve acceptable performance, because of dynamic typing.
Depends. Since the developer can use low-level functions and provide type declarations, a compiler can generate usefully fast code without too much work. More advanced compilers need less declarations, since they do some amount of type inference. One of the costs: the compiler then usually is quite a bit slower.