Hacker News new | ask | show | jobs
by ciroduran 587 days ago
Probably two things:

- Pure programming means having to unlearn a lot of stuff you usually do through intermediate variables[1]. You have to express what you want without this (and it's actually freeing).

- Lazy evaluation allowed by pure programming. It means that the order of execution is not the same as you'd have in strict/eager evaluation. It can it be hard to reason about it initially, but once you get it, it can be very powerful.

[1] Not exactly true, you can still use them but they're used in a different way.