CSGEN(1) Icon Program Library CSGEN(1) NNNNAAAAMMMMEEEE csgen - context-sensitive sentences SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS ccccssssggggeeeennnn [----tttt] DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN _C_s_g_e_n accepts a context sensitive production grammar from standard input and generates randomly selected sentences from the corresponding language. Uppercase letters stand for nonterminal symbols, ---->>>> indi- cates the lefthand side can be rewritten by the righthand side. Other characters are considered to be terminal sym- bols. Lines beginning with #### are considered to be comments and are ignored. A line consisting of a nonterminal symbol followed by a colon and a nonnegative integer iiii is a genera- tion specification for _i instances of sentences for the language defined by the nonterminal (goal) symbol. An exam- ple is: # a(n)b(n)c(n) # Salomaa, p. 11. Attributed to M. Soittola. # X X->abc X->aYbc Yb->bY Yc->Zbcc bZ->Zb aZ->aaY aZ->aa X:10 A positive integer followed by a colon can be prefixed to a production to replicate that production, making its selec- tion more likely. For example, 3:X->abc is equivalent to X->abc X->abc X->abc The ----tttt option writes a trace of the derivations to standard error output. LLLLIIIIMMMMIIIITTTTAAAATTTTIIIIOOOONNNNSSSS Nonterminal symbols can only be represented by single Version 5.9 The University of Arizona - 6/28/83 1 CSGEN(1) Icon Program Library CSGEN(1) uppercase letters and there is no way to represent uppercase terminal symbols. There can be only one generation specification and it must appear as the last line of input. Generation of context-sensitive strings is a slow process. It may not terminate, either because of a loop in the rewriting rules of the grammar or because of the progressive accumulation of nonterminal symbols. _C_s_g_e_n, however, avoids deadlock, in which there are no possible rewrites for a string in the derivation. Version 5.9 The University of Arizona - 6/28/83 2 CSGEN(1) Icon Program Library CSGEN(1) SSSSEEEEEEEE AAAALLLLSSSSOOOO Salomaa, Arto. _F_o_r_m_a_l _L_a_n_g_u_a_g_e_s, Academic Press, New York, 1973. AAAAUUUUTTTTHHHHOOOORRRR Ralph E. Griswold Version 5.9 The University of Arizona - 6/28/83 3