|
ForSyDe.Shallow.UntimedLib | Portability | portable | Stability | experimental | Maintainer | forsyde-dev@ict.kth.se |
|
|
|
|
|
Description |
The untimed library defines process constructors and processes for
the untimed computational model. A process constructor is a higher
order function which together with combinational function(s) and
values as arguments constructs a process.
|
|
Synopsis |
|
|
|
|
Combinational process constructors
|
|
Combinational process constructors are used for processes that do not have a state.
|
|
|
|
|
|
|
|
|
The first parameter of mapU is a constant integer defining the number of tokens consumed in every evaluation cycle. The second argument is a function on lists of the input type and returning a list of the output type. For instance,
r2 = mapU 1 f
where f :: [Int] -> [Int]
f [x] = [2*x]
defines a process r2 which consumes one token in each evaluation cycle and multiplies it by two.
|
|
Sequential process constructors
|
|
Sequential process constructors are used for processes that have a state. One of the input parameters is the initial state.
|
|
|
scanU has an internal state which is visible at the output. The first argument is a function 'gamma' which, given the state returns the number of tokens consumed next. The second argument is the next state function and the third is the initial state.
|
|
|
The process constructor mealyU creates a state machine of Moore type. In addition to the next state function they also have an output encoding function. The output depends directly on the internal state.
|
|
|
The process constructor mooreU creates a state machine of Moore type. In addition to the next state function they also have an output encoding function. The output depends directly on the internal state.
|
|
|
|
|
|
|
initU is used to initialise a signal. Its first argument is prepended to its second argument, a signal.
|
|
Zipping and unzipping signals
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Produced by Haddock version 2.1.0 |