ReadonlytailRecM: <X, A>(Executes a stepper while it returns a Continue<A>. This exits only if stepper returned a Break<A> and forwards it.
Almost all of the MonadRec instances are implemented with a simple while loop because JavaScript runtime rarely optimizes a tail call.
An extended
Monadalso supports thetailRecMoperation.