\section{Finding {\tt yacc} definitions} <<*>>= procedure rcsinfo () return "$Id: yaccdefs.nw,v 1.18 2008/10/06 01:03:05 nr Exp nr $" || "$Name: v2_12 $" end procedure main(args) go() end procedure postpass(name, arg) static kind case name of { "begin" : arg ? kind := tab(upto(' ')|0) "text" : if kind == "code" then arg ? if id := tab(many(&letters)) then { tab(many(' \t')) if =":" & any(&letters ++ ' ([{') then writedefn(id) } } return end procedure prepass(name, arg) if name == "end" then writedefn(&null) # force newline end