this was during the tumultuous bakumatsu period uwifuza kuboneza urubyaro in haskell this limitation is enforced at compile time by the type system