Dobozok sokszorosítása.
<wiredecl> ::= "template" <templateid> <prelude> <body>
<wiringdecl> ::= ... | "replicate" <boxid> "as" <boxid> [ "*" <natconst> ] | "instantiate" <templateid> "as" <boxid> [ "*" <natconst> ]
Egy sablont úgy definiálunk, hogy megadjuk a doboz szerkezetét, melyet aztán példányosítunk, hogy megkapjuk a kívánt számú dobozt. Hogy egyszerűsítsük az összetett rendszerek létrehozását, mind a dobozok, mind a sablonok sokszorozhatóak megadott számszor (natconst). Például a
instantiate t as b * 4 eredménye a b1, b2, b3 és b4 dobozok lesznek.
Drótok makrózása.
<wiringdecl> ::= ... | "wire" <wmacid> "(" <id1> ... <idn> ")" "=" <wireid> <sources> <dests> | "wire" <wmacid> <args>
A drótok makrózása a drót nevének és paramétereinek megadásával történhet.A drótmakrók argumentumai lehetnek doboznevek, vagy ki-/bemenetek nevei. Azonban nem lehetséges nem meghatározott értékek (pl. integer) argumentumként való megadása.
Ismételt drótozás.
<wiringdecl> ::= "for" <id> "=" <expr> [ "except" <excepts> ] <wiringdecl>
Drótok deklarációja ismételhető egy változó segítségével (opcionálisan elhagyhatók egyes értékek). Például:
for i = 0 to 4 except (2, 1)
instantiate Track as Ring{i},
eredményeképpen legenerálódik a Ring0, Ring3, Ring4, mint a Track sablon egy-egy példánya. Lehetőség van arra is, hogy for-ciklusokat fűzzünk össze, ha szükséges; lehetőség van mindkét ciklusváltozó egyidejű használatára, a statikus konstansok és makrók használatára. Ugyanakkor figyelembe kell venni, hogy az ilyen fajta ciklusok inkább a statikus folyamathálók részei, mintsem a dinamikus kifejezőnyelvé.