Creatively showing how expensive and slow Ethereum is is entertaining but not entirely relevant. It's like comparing a passenger airplane and a tank, claiming transportation is their sole purpose and since airplanes are both faster and cheaper than tanks, tanks are fraudulent.
Ethereum is architected to be a decentralized, permissionless computing platform. Performance is one of the trade offs.
It's much more productive, and more challenging in my opinion, to discuss whether or not the trade offs being made are worthwhile.
thought you were going to say you teach functional basics like map, filter, reduce, etc.
converting between recursive/iterative is a good exercise but teaching one and not the other seems unnecessary, especially considering you see more loops in the wild.
---
also fwiw can just
```
highlightProducts(aListOfProducts.splice(-5))
```