Evolved KFORTH Programs
main: { -1 0 2dup 1 call 9 call 4 9 call 8 9 ?loop 9 call 8 2* 17 2+ call -41 } row1: { GROW ROTATE EAT EAT 2- EAT } row2: { 20 20 WHERE WHERE and } row3: { } row4: { swap swap } row5: { ?loop pop pop 99 R5 R5 -46 -46 2* 1- ENERGY <> 2swap CMOVE -74 -74 9 9 } row6: { } row7: { MOOD 92 -10 13 CMOVE -74 MOOD pack2 } row8: { } row9: { -88 ENERGY 4 / R0! -1 0 R0 MAKE-SPORE -1 0 R0 MAKE-SPORE OMOVE 1 34 4 OMOVE 2dup EAT pop OMOVE negate 71 EAT EAT 2- OMOVE EAT } row10: { ENERGY 5 / R0! 1 1 R0 MAKE-SPORE 3 2 R0 MAKE-SPORE pop 31 -3 OMOVE EAT -5 EAT -5 OMOVE -3 OMOVE -3 EAT pop EAT pop OMOVE pop } row11: { -19 < 2over CMOVE } row12: { <> 1 32 } row13: { MOOD! -99 R1 -97 -73 -87 or 57 -20 } row14: { R7! 59 < } row15: { -64 - Rn! -83 -64 - 82 Rn! } row16: { R0 } |
main: { 36 25 CB 9 call 9 call 1 call 9 call CB 9 2 call 9 call call -61 >= call R4! if 64 -75 9 call 4 9 call 82 6 CMOVE -rot pick OMOVE } row1: { 5 35 2dup EAT EAT OMOVE 78 2dup } row2: { 18 18 18 18 49 18 18 49 } row3: { } row4: { ENERGY 0 RECV > 0 4 -3 0 R0 MAKE-SPORE 2dup pop OMOVE -1 -1 2dup ROTATE NUM-CELLS R0! } row5: { } row6: { EAT SEND R7 -86 SEND SEND EAT SEND EAT SEND SEND R7 -86 R0! R5! } row7: { 75 unpack4 } row8: { } row9: { ENERGY 4 / R0! -1 0 R0 MAKE-SPORE EAT -1 0 R0 MAKE-SPORE < -1 < 2dup 2negate GROW EAT <= -1 -1 2dup EAT } row10: { } row11: { 80 13 } row12: { EAT OMOVE 74 } row13: { } row14: { 2* EAT } row15: { ?exit 5 ?dup 11 EAT pop 2swap SEND EAT 15 NEAREST } row16: { } row17: { -98 -61 >= 2swap } row18: { -98 -61 >= 2swap } row19: { } row20: { } row21: { } row22: { } row23: { } row24: { } row25: { ?exit 5 ?dup 11 EAT pop 2swap SEND EAT 15 NEAREST } row26: { ?exit 5 ?dup 11 EAT pop 2swap SEND EAT 15 NEAREST } row27: { } row28: { } row29: { ?exit 5 ?dup 11 EAT pop 2swap HAS-NEIGHBOR -81 } row30: { ?exit 5 ?dup 11 EAT pop 2swap HAS-NEIGHBOR -81 } row31: { 66 -98 -74 11 -77 R4 pack2 R3 -74 11 -77 } row32: { -98 -74 11 -77 66 -98 -74 11 -77 R4 pack2 R3 -74 11 -77 } row33: { 66 -96 -78 15 -96 -78 15 -77 -77 R4 pack2 } row34: { 66 -96 -78 15 -96 -78 15 -77 -77 R4 pack2 } row35: { HAS-NEIGHBOR = R4 = } row36: { min -38 R5! -40 } row37: { min } row38: { } row39: { } row40: { } row41: { } row42: { 36 25 CB 9 call 9 call 1 call 9 call 2 call 9 call call 9 3 call R4! if 64 -75 9 call 4 9 call 82 6 CMOVE -rot pick OMOVE } row43: { 36 25 CB 9 call 9 call 1 call 9 call 2 call 9 call call 9 3 call R4! if 64 -75 9 call 4 9 call 82 6 CMOVE -rot pick OMOVE } row44: { 11 57 -83 xor } row45: { } row46: { 80 13 } row47: { 80 13 } |
main: { 9 call 1 call call swap call R0! -75 78 ENERGY > ?loop } row1: { EAT EAT -87 -65 EAT 4 -88 EAT 91 3 13 EAT EAT EAT } row2: { } row3: { } row4: { } row5: { } row6: { } row7: { <= 22 } row8: { 35 24 EAT 2+ -48 -46 2dup 72 EAT OMOVE EAT OMOVE } row9: { ENERGY 4 / R0! -1 0 8 -1 GROW 0 R0 MAKE-SPORE -1 0 R0 MAKE-SPORE -54 xor EAT pack4 1- -1 OMOVE -1 dup 2dup OMOVE pop EAT OMOVE 3 54 61 74 OMOVE -50 EAT + 12 } row10: { 0 } row11: { } row12: { R8 -27 } row13: { } row14: { 95 39 1+ } row15: { -94 -38 46 } row16: { } row17: { -59 } row18: { 83 R4! -53 R3! } row19: { ?dup } row20: { R5! <> or } row21: { } row22: { -99 R3 -99 R3 } row23: { EAT 82 -76 EAT 82 -80 -43 R5 -38 LOOK2 HAS-NEIGHBOR R0! if } row24: { } |