DIRECTORY Commander USING [CommandProc, Register], IO USING [STREAM, PutF, --GetLineRope, --SkipWhitespace, GetChar, GetInt, char], Rope USING [ROPE]; Try: CEDAR PROGRAM IMPORTS Commander, IO = BEGIN InputSlice: TYPE = RECORD [ input: SEQUENCE numInputs: NAT OF CHAR -- '0, '1, or 'x ]; OutputSlice: TYPE = RECORD [ output: SEQUENCE numOutputs: NAT OF CHAR -- '0, '1, or 'x ]; ProductTerm: TYPE = RECORD [ inputs: InputSlice, outputs: OutputSlice ]; TruthTable: TYPE = RECORD [ row: SEQUENCE numRows: NAT OF OutputSlice ]; Xy: PROC [n: INT] RETURNS [Rope.ROPE] = BEGIN RETURN["abc"]; END; Test: Commander.CommandProc = BEGIN tt: REF TruthTable _ NEW[TruthTable[50]]; DO i, j: NAT; c, d: CHAR; cmd.out.PutF["Type something:"]; [] _ cmd.in.SkipWhitespace[]; d _ cmd.in.GetChar[]; i _ cmd.in.GetInt[]; j _ cmd.in.GetInt[]; c _ tt[i][j]; tt[i][j] _ d; cmd.out.PutF["Done...%g/%g\n", IO.char[d], IO.char[c]]; ENDLOOP; END; Commander.Register[key: "mayo", proc: Test, doc: "test program"]; END. ÊܘšÏk ˜ Jšœ œ˜(Jšœœœ@˜Pšœœœ˜J˜——J˜šÏbœœœ˜Jšœ œ˜J˜J˜šœ œœ˜Jš œœ œœœÏc˜7J˜J˜—šœ œœ˜Jš œœ œœœŸ˜9J˜J˜—šœ œœ˜J˜J˜J˜J˜—šœ œœ˜Jšœœ œœ ˜)J˜J˜—š Ïnœœœœœ˜-Jšœ˜Jšœ˜J˜—šžœ˜#Jšœœœ˜)š˜Jšœœ˜ Jšœœ˜ J˜ J˜J˜Jšœ˜Jšœ˜J˜ J˜ Jšœœ œ ˜7Jšœ˜—Jšœ˜J˜—JšœA˜AJšœ˜——…—îÐ