Annotation of 43BSD/contrib/icon/samples/prefix.u1, revision 1.1.1.1

1.1       root        1: proc main
                      2:        local   0,000000,write
                      3:        local   1,000000,prefix
                      4:        local   2,000000,read
                      5:        declend
                      6:        file    prefix.icn
                      7:        line    8
                      8:        mark    L1
                      9: lab L2
                     10:        line    9
                     11:        mark    L0
                     12:        var     0
                     13:        var     1
                     14:        var     2
                     15:        pnull
                     16:        invoke  1
                     17:        invoke  1
                     18:        invoke  1
                     19: lab L3
                     20:        unmark  1
                     21:        goto    L2
                     22: lab L4
                     23:        unmark  1
                     24: lab L1
                     25:        pnull
                     26:        line    10
                     27:        pfail
                     28:        end
                     29: proc prefix
                     30:        local   0,001000,s
                     31:        local   1,000000,strip
                     32:        local   2,000000,lassoc
                     33:        local   3,000000,rassoc
                     34:        con     0,020000,2,053,055
                     35:        con     1,020000,2,052,057
                     36:        con     2,020000,1,136
                     37:        declend
                     38:        file    prefix.icn
                     39:        line    12
                     40:        mark    L1
                     41:        pnull
                     42:        var     0
                     43:        var     1
                     44:        var     0
                     45:        line    13
                     46:        invoke  1
                     47:        asgn
                     48:        unmark  1
                     49: lab L1
                     50:        mark    L2
                     51:        mark    L3
                     52:        mark    L4
                     53:        var     2
                     54:        var     0
                     55:        mark    L6
                     56:        cset    0
                     57:        esusp
                     58:        goto    L7
                     59: lab L6
                     60:        cset    1
                     61: lab L7
                     62:        line    14
                     63:        invoke  2
                     64:        esusp
                     65:        goto    L5
                     66: lab L4
                     67:        mark    L8
                     68:        var     3
                     69:        var     0
                     70:        cset    2
                     71:        invoke  2
                     72:        esusp
                     73:        goto    L9
                     74: lab L8
                     75:        var     0
                     76: lab L9
                     77: lab L5
                     78:        pret
                     79: lab L3
                     80:        line    14
                     81:        pfail
                     82:        unmark  1
                     83: lab L2
                     84:        pnull
                     85:        line    15
                     86:        pfail
                     87:        end
                     88: proc strip
                     89:        local   0,001000,s
                     90:        local   1,000000,tab
                     91:        local   2,000000,bal
                     92:        local   3,000000,pos
                     93:        con     0,010000,1,050
                     94:        con     1,020000,1,051
                     95:        con     2,002000,1
                     96:        declend
                     97:        file    prefix.icn
                     98:        line    17
                     99:        mark    L1
                    100: lab L2
                    101:        line    18
                    102:        mark    L0
                    103:        var     0
                    104:        bscan
                    105:        pnull
                    106:        str     0
                    107:        tabmat
                    108:        pop
                    109:        pnull
                    110:        var     0
                    111:        var     1
                    112:        var     2
                    113:        cset    1
                    114:        invoke  1
                    115:        invoke  1
                    116:        rasgn
                    117:        pop
                    118:        var     3
                    119:        pnull
                    120:        int     2
                    121:        neg
                    122:        invoke  1
                    123:        escan
                    124: lab L3
                    125:        unmark  1
                    126:        goto    L2
                    127: lab L4
                    128:        unmark  1
                    129: lab L1
                    130:        mark    L5
                    131:        mark    L6
                    132:        var     0
                    133:        line    19
                    134:        pret
                    135: lab L6
                    136:        line    19
                    137:        pfail
                    138:        unmark  1
                    139: lab L5
                    140:        pnull
                    141:        line    20
                    142:        pfail
                    143:        end
                    144: proc lassoc
                    145:        local   0,001000,s
                    146:        local   1,001000,c
                    147:        local   2,000020,j
                    148:        local   3,000000,bal
                    149:        local   4,000000,form
                    150:        declend
                    151:        file    prefix.icn
                    152:        line    22
                    153:        mark    L1
                    154:        var     0
                    155:        line    24
                    156:        bscan
                    157:        mark    L0
                    158:        pnull
                    159:        var     2
                    160:        var     3
                    161:        var     1
                    162:        invoke  1
                    163:        asgn
                    164:        pop
                    165: lab L2
                    166:        efail
                    167: lab L3
                    168:        escan
                    169:        unmark  1
                    170: lab L1
                    171:        mark    L4
                    172:        mark    L5
                    173:        var     4
                    174:        var     0
                    175:        pnull
                    176:        var     2
                    177:        line    25
                    178:        nonnull
                    179:        invoke  2
                    180:        pret
                    181: lab L5
                    182:        line    25
                    183:        pfail
                    184:        unmark  1
                    185: lab L4
                    186:        pnull
                    187:        line    26
                    188:        pfail
                    189:        end
                    190: proc rassoc
                    191:        local   0,001000,s
                    192:        local   1,001000,c
                    193:        local   2,000020,j
                    194:        local   3,000000,form
                    195:        local   4,000000,bal
                    196:        declend
                    197:        file    prefix.icn
                    198:        line    28
                    199:        mark    L1
                    200:        mark    L2
                    201:        var     3
                    202:        var     0
                    203:        var     0
                    204:        line    30
                    205:        bscan
                    206:        var     4
                    207:        var     1
                    208:        invoke  1
                    209:        escan
                    210:        invoke  2
                    211:        pret
                    212: lab L2
                    213:        line    30
                    214:        pfail
                    215:        unmark  1
                    216: lab L1
                    217:        pnull
                    218:        line    31
                    219:        pfail
                    220:        end
                    221: proc form
                    222:        local   0,001000,s
                    223:        local   1,001000,k
                    224:        local   2,000020,a1
                    225:        local   3,000020,a2
                    226:        local   4,000020,op
                    227:        local   5,000000,tab
                    228:        local   6,000000,move
                    229:        local   7,000000,prefix
                    230:        con     0,002000,1
                    231:        con     1,002000,0
                    232:        con     2,010000,1,050
                    233:        con     3,010000,1,054
                    234:        con     4,010000,1,051
                    235:        declend
                    236:        file    prefix.icn
                    237:        line    33
                    238:        mark    L1
                    239:        var     0
                    240:        line    35
                    241:        bscan
                    242:        mark    L2
                    243:        pnull
                    244:        var     2
                    245:        var     5
                    246:        var     1
                    247:        line    36
                    248:        invoke  1
                    249:        asgn
                    250:        unmark  1
                    251: lab L2
                    252:        mark    L3
                    253:        pnull
                    254:        var     4
                    255:        var     6
                    256:        int     0
                    257:        line    37
                    258:        invoke  1
                    259:        asgn
                    260:        unmark  1
                    261: lab L3
                    262:        pnull
                    263:        var     3
                    264:        var     5
                    265:        int     1
                    266:        line    38
                    267:        invoke  1
                    268:        asgn
                    269:        line    35
                    270:        escan
                    271:        unmark  1
                    272: lab L1
                    273:        mark    L4
                    274:        mark    L5
                    275:        pnull
                    276:        pnull
                    277:        pnull
                    278:        pnull
                    279:        pnull
                    280:        var     4
                    281:        str     2
                    282:        line    40
                    283:        cat
                    284:        var     7
                    285:        var     2
                    286:        invoke  1
                    287:        cat
                    288:        str     3
                    289:        cat
                    290:        var     7
                    291:        var     3
                    292:        invoke  1
                    293:        cat
                    294:        str     4
                    295:        cat
                    296:        pret
                    297: lab L5
                    298:        line    40
                    299:        pfail
                    300:        unmark  1
                    301: lab L4
                    302:        pnull
                    303:        line    41
                    304:        pfail
                    305:        end

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.