quantum computing, monads, and FP in general