In a nutshell how academics thinks about software performance whether CPU-time (loosely correlates to energy efficiency, especially with compiled languages) or memory-space is to consider roughly how the number of instructions or bytes scales with the amount of input. Whether "constant", "logarithmic", "linear", "linear-logarithmic", or "exponential".

Designing algorithms boils down to breaking down problems & aggregating solutions. Designing data-structures is where breakthroughs are.

> Designing data-structures is where breakthroughs are.

Then why is there so many lisp folks in academia?

@lanodan @alcinnz LISP is no worse at representing data structures than C. Sure, the implementations of the algorithms have more overhead, but that's not really relevant when you're designing the things. Nobody's going to use your academic code in practice, most likely, anyway.

Sign in to participate in the conversation

For people who care about, support, or build Free, Libre, and Open Source Software (FLOSS).