File: yapp.i

package info (click to toggle)
intercal 30%3A0.30-2
  • links: PTS
  • area: main
  • in suites: buster
  • size: 4,044 kB
  • sloc: ansic: 8,936; sh: 1,274; yacc: 1,073; lex: 518; lisp: 460; makefile: 435; perl: 295
file content (414 lines) | stat: -rw-r--r-- 9,900 bytes parent folder | download | duplicates (10)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
	DO (3990) NEXT
	PLEASE DO ;1 <- #128
	PLEASE DO ,2 <- #2
	DO ,2SUB#1 <- #136
	DO ,2SUB#2 <- #240
	PLEASE DO ,4 <- #4

	DO	;1SUB#1 <- #42920$#47080
	DO	;1SUB#2 <- #1156$#57920
	PLEASE	;1SUB#3 <- #64324$#3496
	DO	;1SUB#4 <- #4904$#25152
	DO	;1SUB#5 <- #12352$#52716
	DO	;1SUB#6 <- #29312$#21504
	PLEASE	;1SUB#7 <- #54608$#3496
	DO	;1SUB#8 <- #52968$#25152
	DO	;1SUB#9 <- #12352$#42740
	DO	;1SUB#10 <- #8020$#47488
	PLEASE	;1SUB#11 <- #54656$#53200
	DO .4 <- #44
	DO (100) NEXT

	DO .9 <- #0
	DO .7 <- #0
	PLEASE COME FROM (50)
	DO .6 <- #0
	PLEASE COME FROM (5)
	DO (3000) NEXT
	DO .5 <- '?".1~#256"$#2'~#3
	DO (49) NEXT
	DO .2 <- !1~#15'$!1~#240'
	DO .2 <- !2~#15'$!2~#240'
	DO .2 <- !2~#15'$!2~#240'
	DO .1 <- .9
	DO .9 <- .2
	DO (1010) NEXT
	DO .1 <- .6
	DO (1020) NEXT
	DO .6 <- .1
	DO ,4SUB.6 <- .3~#255
	DO .5 <- '?".6~#4"$#2'~#3
(5)	DO (4) NEXT
(4)	DO (1001) NEXT
	PLEASE FORGET #1
	DO .6 <- #0
	DO .1 <- .7
	DO (1020) NEXT
	DO .7 <- .1
	DO .5 <- '?".&7~#1"$#1'~#3
	DO (7) NEXT
	DO ;1SUB#1 <- #29032$#34304
	DO ;1SUB#2 <- #36544$#45352
	DO ;1SUB#3 <- #41992$#15828
	DO .4 <- #12
	DO (8) NEXT
(7)	DO (1001) NEXT
	DO ;1SUB#1 <- #3496$#4904
	DO ;1SUB#2 <- #41992$#15828
	DO .4 <- #8
(8)	PLEASE FORGET #1
	DO (100) NEXT
	DO .1 <- .7
	DO (220) NEXT
	DO .1 <- ',4SUB#1'$',4SUB#2'
	DO ,3001SUB#1 <- #196
	DO (3090) NEXT
	DO .2 <- #36
	DO (3001) NEXT
	DO .2 <- #196
	DO (3001) NEXT
	DO .1 <- ',4SUB#3'$',4SUB#4'
(50)	DO (200) NEXT
(49)	DO (1001) NEXT
	PLEASE FORGET #1

	DO	;1SUB#1 <- #29032$#34304
	DO	;1SUB#2 <- #36544$#63744
	PLEASE	;1SUB#3 <- #8448$#8512
	DO	;1SUB#4 <- #12928$#49896
	DO	;1SUB#5 <- #47760$#3496
	DO	;1SUB#6 <- #12008$#16960
	PLEASE	;1SUB#7 <- #29760$#3828
	DO	;1SUB#8 <- #8020$#51584
	DO	;1SUB#9 <- #54656$#54224
	DO	;1SUB#10 <- #29032$#34304
	PLEASE	;1SUB#11 <- #36544$#63744
	DO	;1SUB#12 <- #8448$#8512
	DO	;1SUB#13 <- #12928$#37608
	DO	;1SUB#14 <- #6800$#3496
	PLEASE	;1SUB#15 <- #31464$#27200
	DO	;1SUB#16 <- #63040$#56192
	DO	;1SUB#17 <- #43220$#17608
	DO	;1SUB#18 <- #33920$#11584
	PLEASE	;1SUB#19 <- #40084$#57288
	DO	;1SUB#20 <- #12020$#8020
	DO	;1SUB#21 <- #47488$#53632
	DO	;1SUB#22 <- #59584$#48320
	PLEASE	;1SUB#23 <- #52800$#48276
	DO	;1SUB#24 <- #34440$#57024
	DO	;1SUB#25 <- #14656$#40960
	DO	;1SUB#26 <- #44032$#57744
	PLEASE	;1SUB#27 <- #3496$#63208
	DO	;1SUB#28 <- #34436$#57920
	DO	;1SUB#29 <- #64324$#6880
	DO	;1SUB#30 <- #8068$#8020
	PLEASE	;1SUB#31 <- #51584$#34176
	DO	;1SUB#32 <- #52928$#27968
	DO	;1SUB#33 <- #7316$#34440
	DO	;1SUB#34 <- #60032$#26624
	PLEASE	;1SUB#35 <- #53312$#11584
	DO	;1SUB#36 <- #51600$#24288
	DO	;1SUB#37 <- #38788$#23380
	DO	;1SUB#38 <- #10688$#22792
	PLEASE	;1SUB#39 <- #54656$#45724
	DO	;1SUB#40 <- #58240$#19776
	DO	;1SUB#41 <- #6272$#28224
	DO	;1SUB#42 <- #14464$#16020
	PLEASE	;1SUB#43 <- #4048$#3496
	DO	;1SUB#44 <- #54056$#25152
	DO	;1SUB#45 <- #45952$#41992
	DO	;1SUB#46 <- #28116$#43732
	PLEASE	;1SUB#47 <- #39880$#40960
	DO	;1SUB#48 <- #59392$#27024
	DO	;1SUB#49 <- #3496$#52968
	DO	;1SUB#50 <- #41992$#32212
	PLEASE	;1SUB#51 <- #42304$#7296
	DO	;1SUB#52 <- #20160$#26988
	DO	;1SUB#53 <- #6464$#40960
	DO	;1SUB#54 <- #59392$#7296
	PLEASE	;1SUB#55 <- #65216$#34880
	DO	;1SUB#56 <- #37312$#41556
	DO	;1SUB#57 <- #34440$#38528
	DO	;1SUB#58 <- #30976$#54848
	PLEASE	;1SUB#59 <- #27968$#18832
	DO	;1SUB#60 <- #3496$#52968
	DO	;1SUB#61 <- #41992$#32212
	DO	;1SUB#62 <- #42304$#7296
	PLEASE	;1SUB#63 <- #16064$#26988
	DO	;1SUB#64 <- #6464$#40960
	DO	;1SUB#65 <- #59392$#7296
	DO	;1SUB#66 <- #65216$#34880
	PLEASE	;1SUB#67 <- #37312$#41556
	DO	;1SUB#68 <- #34440$#31360
	DO	;1SUB#69 <- #32512$#49216
	DO	;1SUB#70 <- #27968$#18832
	PLEASE	;1SUB#71 <- #3496$#52968
	DO	;1SUB#72 <- #41992$#32212
	DO	;1SUB#73 <- #42304$#7296
	DO	;1SUB#74 <- #65216$#26988
	PLEASE	;1SUB#75 <- #6464$#40960
	DO	;1SUB#76 <- #59392$#7296
	DO	;1SUB#77 <- #65216$#34880
	DO	;1SUB#78 <- #37312$#41556
	PLEASE	;1SUB#79 <- #34440$#57024
	DO	;1SUB#80 <- #26944$#15360
	DO	;1SUB#81 <- #58112$#18832
	DO	;1SUB#82 <- #3496$#52968
	PLEASE	;1SUB#83 <- #41992$#30932
	DO	;1SUB#84 <- #47488$#37312
	DO	;1SUB#85 <- #41556$#34440
	DO	;1SUB#86 <- #57024$#15680
	PLEASE	;1SUB#87 <- #46336$#59904
	DO	;1SUB#88 <- #57744$#3496
	DO	;1SUB#89 <- #31464$#27200
	DO	;1SUB#90 <- #63040$#40576
	PLEASE	;1SUB#91 <- #6464$#40960
	DO	;1SUB#92 <- #44032$#3564
	DO	;1SUB#93 <- #31808$#37056
	DO	;1SUB#94 <- #17792$#60608
	PLEASE	;1SUB#95 <- #26988$#19776
	DO	;1SUB#96 <- #48256$#29312
	DO	;1SUB#97 <- #21504$#37952
	DO	;1SUB#98 <- #39936$#28012
	PLEASE	;1SUB#99 <- #6848$#7168
	DO	;1SUB#100 <- #20160$#28012
	DO	;1SUB#101 <- #49104$#19168
	DO	;1SUB#102 <- #49028$#23380
	PLEASE	;1SUB#103 <- #58816$#22792
	DO	;1SUB#104 <- #54656$#42968
	DO	;1SUB#105 <- #58816$#12040
	DO	;1SUB#106 <- #46824$#1668
	PLEASE	;1SUB#107 <- #57920$#64324
	DO .4 <- #428
	DO (100) NEXT

	DO .5 <- '?"!6~.6'~#1"$#1'~#3
	DO (80) NEXT
	DO	;1SUB#1 <- #3496$#52416
	DO	;1SUB#2 <- #7168$#6720
	PLEASE	;1SUB#3 <- #54548$#36304
	DO	;1SUB#4 <- #1108$#20308
	DO	;1SUB#5 <- #39296$#54656
	DO .4 <- #20
	DO (100) NEXT
	DO .1 <- .6
	DO (200) NEXT
	DO .8 <- #1
	PLEASE COME FROM (60)
	DO ;1SUB#1 <- #3496$#52968
	DO ;1SUB#2 <- #41992$#15828
	DO .4 <- #8
	DO (100) NEXT
	DO .1 <- .8
	DO (220) NEXT
	DO .1 <- ,4SUB.8
	DO (200) NEXT
	DO .5 <- '?"'#15~"'?.8$.6'~#5"'~#1"$#1'~#3
	DO (80) NEXT
	DO .1 <- .8
	DO (1020) NEXT
(60)	DO .8 <- .1
(80)	DO (1001) NEXT
(79)	PLEASE FORGET #1
	DO	;1SUB#1 <- #29032$#34304
	DO	;1SUB#2 <- #36544$#13568
	PLEASE	;1SUB#3 <- #40128$#13632
	DO	;1SUB#4 <- #11624$#3828
	DO	;1SUB#5 <- #20032$#35968
	DO	;1SUB#6 <- #11520$#24704
	PLEASE	;1SUB#7 <- #61032$#6836
	DO	;1SUB#8 <- #58240$#19776
	DO	;1SUB#9 <- #22656$#9792
	DO	;1SUB#10 <- #62912$#52548
	PLEASE	;1SUB#11 <- #7904$#17092
	DO	;1SUB#12 <- #58240$#19776
	DO	;1SUB#13 <- #6592$#55744
	DO	;1SUB#14 <- #23872$#1620
	PLEASE	;1SUB#15 <- #45520$#8160
	DO	;1SUB#16 <- #5508$#8020
	DO	;1SUB#17 <- #30080$#54656
	DO .4 <- #68
	DO (100) NEXT
	DO .1 <- '"!7$#0'~'#16383$#1'"$#0'~'#32767$#1'
	DO (200) NEXT
	DO	;1SUB#1 <- #29032$#34304
	DO	;1SUB#2 <- #36544$#26304
	PLEASE	;1SUB#3 <- #42624$#43904
	DO	;1SUB#4 <- #42984$#2720
	DO .4 <- #16
	DO (100) NEXT

	PLEASE GIVE UP

(100)	PLEASE STASH .1 + .2 + .3 + .5
	PLEASE DO ,9 <- .4
	DO .1 <- #0
	PLEASE COME FROM (101)
	DO .2 <- .1
	DO .3 <- #4
	PLEASE COME FROM (103)
	DO .5 <- '?".1~.3"$#1'~#3
	DO .1 <- '?.1$.3'~'#0$#65535'
	DO (104) NEXT
(103)	DO .3 <- !3$#0'~'#32767$#1'
(104)	DO (1001) NEXT
	PLEASE FORGET #1
	DO :1 <- ;1SUB'.1~#65532'
	DO ,9SUB'".2$#1"~"#65532$#3"' <- :1~'#43690$#0'
	DO ,9SUB'".2$#2"~"#65532$#3"' <- :1~'#21845$#0'
	DO ,9SUB'".2$#3"~"#65532$#3"' <- :1~'#0$#43690'
	DO ,9SUB.1 <- :1~'#0$#21845'
	DO .5 <- '?"'#65535~"'?.4$.1'~'#0$#65532'"'~#1"$#1'~#3
(101)	DO (102) NEXT
(102)	DO (1001) NEXT
	PLEASE READ OUT ,9
	PLEASE RETRIEVE .1 + .2 + .3 + .5
	PLEASE RESUME #2

(200)	DO ,3001SUB#1 <- #196
	DO (3099) NEXT
	PLEASE RESUME #1

(220)	DO ,3001SUB#1 <- #196
	DO (3090) NEXT
	DO .2 <- #60
	DO (3001) NEXT
	PLEASE READ OUT ,2
	DO ,3001SUB#1 <- #196
	PLEASE RESUME #1

	PLEASE NOTE THE SMALL SUBSET OF THE SYSTEM LIBRARY

(1000)	DO STASH .1 + .2 + .5 + .6
	DO (1004) NEXT
(1004)	PLEASE FORGET #1
	DO .3 <- '?.1$.2'~'#0$#65535'
	DO .6 <- '&.1$.2'~'#0$#65535'
	DO .5 <- '?"!6~.6'~#1"$#1'~#3
	DO (1003) NEXT
	DO .1 <- .3
	DO .2 <- !6$#0'~'#32767$#1'
	DO (1004) NEXT
(1003)	DO (1001) NEXT
	PLEASE RETRIEVE .1 + .2 + .5 + .6
	PLEASE RESUME #2
(1001)	DO RESUME .5

(1010)	DO STASH .1 + .2
	DO .3 <- .1
	DO .1 <- '?.2$#65535'~'#0$#65535'
	DO (1020) NEXT
	PLEASE DO .2 <- .3
	PLEASE DO (1000) NEXT
	DO RETRIEVE .1 + .2
	PLEASE RESUME #1

(1020)	DO STASH .2 + .3
	DO .2 <- #1
	PLEASE DO (1021) NEXT
(1021)	DO FORGET #1
	DO .3 <- "?!1~.2'$#1"~#3
	PLEASE DO .1 <- '?.1$.2'~'#0$#65535'
	DO (1022) NEXT
	DO .2 <- !2$#0'~'#32767$#1'
	DO (1021) NEXT
(1023)	PLEASE RESUME .3
(1022)	DO (1023) NEXT
	PLEASE RETRIEVE .2 + .3
	PLEASE RESUME #2

	PLEASE USE A SUBSET OF THE AUTHORIZED CHANNELS

(2030)	DO STASH .1 + .5
	DO .3 <- #0
	DO .5 <- '?"!2~.2'~#1"$#1'~#3
	PLEASE DO (2031) NEXT
	DO .4 <- #1
	PLEASE DO (2033) NEXT
(2033)	DO FORGET #1
	DO .5 <- '?".2~#32768"$#2'~#3
	DO (2032) NEXT
	DO .2 <- !2$#0'~'#32767$#1'
	PLEASE DO .4 <- !4$#0'~'#32767$#1'
	DO (2033) NEXT
(2032)	DO (1001) NEXT
(2036)	PLEASE FORGET #1
        DO .5 <- '?.1$.2'~'#0$#65535'
        DO .5 <- '?"'&"!2~.5'~'"?'?.5~.5'$#32768"~"#0$#65535"'"$
                 ".5~.5"'~#1"$#2'~#3
	DO (2034) NEXT
	DO .5 <- .3
	DO (1010) NEXT
	PLEASE DO .1 <- .3
        DO .3 <- 'V.4$.5'~'#0$#65535'
	DO (2035) NEXT
(2034)	PLEASE DO (1001) NEXT
(2035)	DO FORGET #1
	DO .5 <- "?'.4~#1'$#2"~#3
	DO (2031) NEXT
	DO .2 <- .2~#65534
	DO .4 <- .4~#65534
	PLEASE DO (2036) NEXT
(2031)	DO (1001) NEXT
	PLEASE DO .4 <- .1
	PLEASE RETRIEVE .1 + .5
	PLEASE RESUME #2

(3000)	DO STASH .2 + .3 + .5
	DO .2 <- ,3000SUB#1
	PLEASE WRITE IN ,3000
	DO .1 <- ,3000SUB#1
	DO .5 <- '?".1~#256"$#2'~#3
	DO (3008) NEXT
	DO (1000) NEXT
	DO .1 <- .3~#255
	DO ,3000SUB#1 <- .1
	DO (3009) NEXT
(3008)	DO (1001) NEXT
(3009)	DO RETRIEVE .2 + .3 + .5
	PLEASE RESUME #2

(3001)	DO STASH .1 + .3
	DO .1 <- ,3001SUB#1
	DO (1010) NEXT
	DO ,3001SUB#1 <- .3~#255
	PLEASE READ OUT ,3001
	DO ,3001SUB#1 <- .2
	DO .1 <- .2
	DO RETRIEVE .1 + .3
	PLEASE RESUME #1

(3090)	PLEASE ABSTAIN FROM (3097)
(3099)	PLEASE STASH .1 + .2 + .3 + .4
	DO .2 <- #256
	PLEASE STASH .2
	DO (3091) NEXT
	DO (3095) NEXT
	DO .2 <- #80
(3097)	DO (3001) NEXT
	PLEASE REINSTATE (3097)
	PLEASE RETRIEVE .1 + .2 + .3 + .4
	PLEASE RESUME #1
(3098)	PLEASE RESUME '?"!1~.1'~#1"$#2'~#3
(3091)	DO COME FROM (3092)
	DO .2 <- #10
	DO (2030) NEXT
	DO .2 <- .4
	PLEASE STASH .2
	DO .1 <- .3
(3092)	DO (3098) NEXT

(3095)	DO COME FROM (3094)
	PLEASE RETRIEVE .2
	DO (3093) NEXT
	DO .2 <- .2$#3
	DO .2 <- !2~#15'$!2~#240'
	DO .2 <- !2~#15'$!2~#240'
(3094)	DO (3001) NEXT
(3093)	PLEASE RESUME '?".2~#256"$#1'~#3

(3990)	PLEASE DO ,3000 <- #1
	DO ,3000SUB#1 <- #0
	PLEASE DO ,3001 <- #1
	DO ,3001SUB#1 <- #0
	PLEASE RESUME #1