You should look into the documentation of the cats (for scala) library. Crazy stuff. But sometimes things like category theory is very useful. You can develop programs that transform DB tables and SQL queries and mathematically prove (after you took 4 semesters of functional programming and stuff), that you didn't mess it up.