Hi everybody!<br />I'm a novice user of Ragel, and I need the machine to consume unimportant stuff, but I can't figure out how to to that; this is the code of the machine:<br /> <br />main:='O'@init<br /> ('C'$ccaOn'c'$ccaOff<br /> |'T'$txOn't'$txOff<br /> |'R'$rxOn'r'$rxOff<br /> |'D'$dozeOn'A'$dozeOff<br /> |'H'$hibOn'A'$hibOff #)<br />)*;<br /><br />That print & execute OK, but it must cope with code out of the alphabet I define, simply by ignoring it. If I do:<br /><br />main:='O'@init ((any-[CTRDH])*<br /> ('C'$ccaOn(any-'c')*'c'$ccaOff<br /> |'T'$txOn(any-'t')*'t'$txOff<br /> |'R'$rxOn(any-'r')*'r'$rxOff<br /> |'D'$dozeOn(any-'A')*'A'$dozeOff<br /> |'H'$hibOn(any-'A')*'A'$hibOff #)<br /> )*;<br /><br />What would seems to me to be case(is it right?), the graph turn to a mess, and I can't be confident about the results. The result I'm aiming could be:<br />digraph modem {<br /> rankdir=LR;<br /> node [ shape = point ];<br /> ENTRY;<br /> en_1;<br /> node [ shape = ci
 rcle, height = 0.2 ];<br /> node [ fixedsize = true, height = 0.65, shape = doublecircle ];<br /> 1->1[label="DEF"];<br /> 2->2[label="DEF"];<br /> 3->3[label="DEF"];<br /> 4->4[label="DEF"];<br /> 5->5[label="DEF"];<br /> 6->6[label="DEF"];<br /> 7->7[label="DEF"];<br /> node [ shape = circle ];<br /> 1 -> 7 [ label = "'O' / init" ];<br /> 2 -> 7 [ label = "'c' / ccaOff" ];<br /> 3 -> 7 [ label = "'A' / dozeOff" ];<br /> 4 -> 7 [ label = "'A' / hibOff" ];<br /> 5 -> 7 [ label = "'r' / rxOff" ];<br /> 6 -> 7 [ label = "'t' / txOff" ];<br /> 7 -> 2 [ label = "'C' / ccaOn" ];<br /> 7 -> 3 [ label = "'D' / dozeOn" ];<br /> 7 -> 4 [ label = "'H' / hibOn" ];<br /> 7 -> 5 [ label = "'R' / rxOn" ];<br /> 7 -> 6 [ label = "'T' / txOn" ];<br /> ENTRY -> 1 [ label = "IN" ];<br /> en_1 -> 1 [ label = "main" ];<br />}<br /><br />Which I "produce" base upon the output of the first machine code. Can anybody tell me how to instruc
 t Ragel in order I could obtain it, starting from the original machine?<br /><br />Thank you everybody!<br /><br />Wilson<br />