aivika-gpss-0.5: GPSS-like DSL for Aivika

CopyrightCopyright (c) 2017 David Sorokin <david.sorokin@gmail.com>
LicenseBSD3
MaintainerDavid Sorokin <david.sorokin@gmail.com>
Stabilityexperimental
Safe HaskellNone
LanguageHaskell98

Simulation.Aivika.Trans.GPSS.Block.Loop

Description

Tested with: GHC 8.0.2

This module defines the GPSS block LOOP.

Synopsis

Documentation

loopBlock Source #

Arguments

:: MonadDES m 
=> (a -> (b, Bool))

by the specified transact return the next version of the same transact and a condition whether we should exit the loop

-> Block m b ()

the block to transfer in when the condition fails

-> Block m a b 

This is the GPSS construct

LOOP A,B

loopBlockM Source #

Arguments

:: MonadDES m 
=> (a -> Process m (b, Bool))

by the specified transact return the next version of the same transact and a condition whether we should exit the loop

-> Block m b ()

the block to transfer in when the condition fails

-> Block m a b 

This is the GPSS construct

LOOP A,B