> You almost never have to worry about the efficiency of (second x) (cadr x) > and (car (cdr x)). There are always bigger fish to fry than that.
Sure enough, but what if this simple operation is repeated one billion times? There will be differences? It can be easily measured, by benchmarks/profiling, but what I was asking for was if a general principle exists, some rules to keep in mind laying down the program (before actively searching for optimization). To make another example, nesting lets is not advised in the Racket style guide, but it is matter of making more readable code or also more fast code? Language macros can take a series of defines inside a function and expand to constructs so efficient and unreadable that I will never want to care? Sorry for my curiosity, I think I have to try myself to decompile to see how expansion work. -- 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 racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.