The repeat service can transform/run a quantified set of repeated goals.
repeat#run(<quantified_process_set>)BNF
<quantified_process_set> ::=
<repeated goal>
[<repeated goal> , <quantified_process_set>]
<repeated goal> ::=
<goal>
<repetition> * <goal>
<goal> ::=
<predicate>
<remote procedure call>
<quantified_process_set>
<remote procedure call> ::=
# <goal>
<service name> # <goal>
<repetition> ::= <integer>
<predicate> ::=
<predicate name>
<predicate name>
(<argument list>)
<argument list> ::=
<logix_term>
<logix_term> , <
argument list>
Notes:
A <service name> or a <predicate name> may be a string or a variable.
A <service name> or a <predicate name>, which is an undefined writable variable whose name begins with a capital letter, is transformed to its literal string name -
e.g. A#B(X), where A#B(X) and B are writable variables, is transformed to "A"#"B"(X). To suppress this behavior, add the argument "false" following the last argument of the call to repeat -
e.g. repeat#path(Input, Output, false) does NOT treat the Input variable as the literal string, "Input".
Read-only variables, and variables whose names begin with other than an alphabetic capital are NOT transformed.
A negative < repetition> is treated as zero.
Examples:
1. repeat#run(64*dimerization#A_PROTEIN)
2. repeat#run([activator#6*(A_PROTEIN,A_GENE), repressor#R_GENE])
3. repeat#run([2*(activator#A_GENE,3*repressor#R_GENE), hysteresis#MODULE])
The repeat service is applied to the first argument of the Logix user macros: at, c, d, i, l, profile, record, rpc, run, time, trace, vi..
It is also applied to the first argument of the BioSpi and SpiFcp macros "#", atrace, pdb, record, rpc, run, trace, time and to the first two arguments of the macro vtree.4. atrace(porin#(4*Mole, 2*Cell), file, 10)
5. Logix_Users#SpiFcp_Users#spi_object#SPC(SpiChannel)
This document is licensed under Gnu General Public License - Version 3
http://www.nongnu.org/efcp/gnu-gpl3.html