Programming · concepts

High Level vs Low Level

The trade-off between how fast you can write a program and how fast it runs.

Trade-off chart

Development time → CPU time → first runnable first runnable best possible (high-level) best possible (low-level)

High-level language: code runs early, but more CPU time.

Low-level language: takes longer to get running, but ends up using less CPU time.

Development effort until the first runnable code that solves the problem: much less for high level.

Best possible performance after a significant amount of development effort: better for low level.

The original figure

Trade-off between low- and high-level languages: CPU time against development time
Source: Johansson, Robert. Numerical Python. New York, NY: Apress, 2019.