interpretOpIO (Put n)
    | n <= 0    = return NoOp
    | otherwise = do
        (MachineIO _ write') <- ask
        c <- _cursor <$> get
        liftIO $ write' $ replicate n c
        return NoOp
interpretOpIO (Put n)
    | n <= 0    = return NoOp
    | otherwise = do
        (MachineIO _ write') <- ask
        c <- _cursor <$> get
        liftIO $ write' $ replicate n c
        return NoOp
interpretOpIO (Put n)
    | n <= 0    = return NoOp
    | otherwise = do
        (MachineIO _ write') <- ask
        c <- _cursor <$> get
        liftIO $ write' $ replicate n c
        return NoOp