https://medium.com/@cell.lang.dev/why-functional-relational-programming-is-sometimes-faster-than-oop-part-2-6ee91f9bf0ae