Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--NEWS1
-rw-r--r--samples/game-snake.tb51
-rw-r--r--samples/math-prime-factors.ta97
3 files changed, 74 insertions, 75 deletions
diff --git a/NEWS b/NEWS
index 32ef9c6..070da31 100644
--- a/NEWS
+++ b/NEWS
@@ -6,6 +6,7 @@ ENHANCEMENTS:
* Add load/save plugin dialog to GNOME version (Daniel Francis)
* Add busy cursor when projects are being prepared to run
* Reworked Duplicate Blocks warning graphic to reflect current block shapes
+* Refactored until block to better reflect flow logic
* New translations
BUG FIX:
diff --git a/samples/game-snake.tb b/samples/game-snake.tb
index aa157c3..32984ef 100644
--- a/samples/game-snake.tb
+++ b/samples/game-snake.tb
@@ -1,4 +1,4 @@
-[[0, ["start", 2.0], 183, 131, [null, 56]],
+[[0, ["start", 2.0], 183, 132, [null, 55]],
[1, "hat", 740, 420, [null, 2, 13]],
[2, ["string", "left"], 798, 432, [1, null]],
[3, "hat", 740, 180, [null, 4, 12]],
@@ -7,7 +7,7 @@
[6, ["string", "left"], 556, 281, [5, null]],
[7, "stack", 498, 323, [5, 8, 9]],
[8, ["string", "right"], 556, 323, [7, null]],
-[9, "forward", 498, 365, [7, 10, 51]],
+[9, "forward", 498, 365, [7, 10, 50]],
[10, ["number", 10], 569, 365, [9, null]],
[11, "kbinput", 498, 239, [33, 5]],
[12, ["vspace", 0], 740, 234, [3, 14]],
@@ -22,39 +22,38 @@
[21, ["number", 10], 816, 342, [20, null]],
[22, "left", 758, 582, [15, 23, null]],
[23, ["number", 10], 816, 582, [22, null]],
-[24, "wait", 201, 537, [35, 25, null]],
-[25, ["number", 0.1], 259, 537, [24, null]],
+[24, "wait", 201, 456, [35, 25, null]],
+[25, ["number", 0.1], 259, 456, [24, null]],
[26, "forward", 1020, 276, [30, 27, 39]],
[27, ["number", 5], 1091, 276, [26, null]],
[28, "back", 1020, 402, [39, 29, 31]],
[29, ["number", 5], 1078, 402, [28, null]],
-[30, "penup", 1020, 234, [49, 26]],
+[30, "penup", 1020, 234, [48, 26]],
[31, "pendown", 1020, 444, [28, null]],
-[32, "showblocks", 183, 597, [47, null]],
+[32, "showblocks", 183, 596, [47, null]],
[33, "hat", 498, 185, [null, 34, 11]],
[34, ["string", "action"], 556, 197, [33, null]],
-[35, "stack", 201, 495, [47, 36, 24]],
-[36, ["string", "action"], 259, 495, [35, null]],
-[37, "setpensize", 183, 303, [57, 38, 54]],
-[38, ["number", 8], 285, 303, [37, null]],
+[35, "stack", 201, 414, [47, 36, 24]],
+[36, ["string", "action"], 259, 414, [35, null]],
+[37, "setpensize", 183, 304, [56, 38, 53]],
+[38, ["number", 8], 285, 304, [37, null]],
[39, ["storein", 0], 1020, 318, [26, 40, 41, 28]],
[40, ["string", "color"], 1088, 318, [39, null]],
[41, "see", 1088, 360, [39, null]],
-[42, ["equal2", 0], 239, 395, [47, 43, 53, null]],
-[43, "box", 295, 395, [42, 44, null]],
-[44, ["string", "color"], 350, 395, [43, null]],
+[42, ["equal2", 0], 239, 496, [47, 43, 52, null]],
+[43, "box", 295, 496, [42, 44, null]],
+[44, ["string", "color"], 350, 496, [43, null]],
[45, ["number", 3], 852, 242, [16, null]],
[46, ["number", 1], 852, 482, [17, null]],
-[47, ["until", 21], 183, 429, [48, 42, 35, 32]],
-[48, ["vspace", 0], 183, 387, [54, 47]],
-[49, "hat", 1020, 180, [null, 50, 30]],
-[50, ["string", "look ahead"], 1078, 192, [49, null]],
-[51, "stack", 498, 407, [9, 52, null]],
-[52, ["string", "look ahead"], 556, 407, [51, null]],
-[53, "red", 295, 437, [42, null]],
-[54, "setcolor", 183, 345, [37, 55, 48]],
-[55, "red", 260, 345, [54, null]],
-[56, "clean", 183, 177, [0, 57]],
-[57, ["storein", 0], 183, 219, [56, 58, 59, 37]],
-[58, ["string", "color"], 251, 219, [57, null]],
-[59, "blue", 251, 261, [57, null]]]
+[47, ["until", 21], 183, 388, [53, 42, 35, 32]],
+[48, "hat", 1020, 180, [null, 49, 30]],
+[49, ["string", "look ahead"], 1078, 192, [48, null]],
+[50, "stack", 498, 407, [9, 51, null]],
+[51, ["string", "look ahead"], 556, 407, [50, null]],
+[52, "red", 295, 538, [42, null]],
+[53, "setcolor", 183, 346, [37, 54, 47]],
+[54, "red", 260, 346, [53, null]],
+[55, "clean", 183, 178, [0, 56]],
+[56, ["storein", 0], 183, 220, [55, 57, 58, 37]],
+[57, ["string", "color"], 251, 220, [56, null]],
+[58, "blue", 251, 262, [56, null]]]
diff --git a/samples/math-prime-factors.ta b/samples/math-prime-factors.ta
index b13ae53..543060a 100644
--- a/samples/math-prime-factors.ta
+++ b/samples/math-prime-factors.ta
@@ -101,7 +101,7 @@
[100, ["storein", 0], 223, 784, [153, 101, 102, 385]],
[101, ["string", "radius"], 291, 784, [100, null]],
[102, ["number", 400], 291, 826, [100, null]],
-[103, ["string", "ii"], 684, 636, [189, null]],
+[103, ["string", "ii"], 719, 884, [189, null]],
[104, "seth", 583, 564, [453, 238, 174]],
[105, ["number", 360], 765, 606, [106, null]],
[106, ["division2", 0], 695, 606, [238, 105, 188]],
@@ -125,16 +125,16 @@
[124, ["string", "number"], 1163, 448, [123, null]],
[125, ["plus2", 0], 960, 364, [119, 121, 122]],
[126, "sandwichclampcollapsed", 900, 354, [115, 119, null]],
-[127, ["until", 62], 463, 710, [136, 132, 451, null]],
-[128, ["storein", 20], 481, 818, [451, 186, 236, null]],
-[129, ["string", "ii"], 603, 818, [186, null]],
-[130, "box", 603, 942, [236, 187, null]],
-[131, ["string", "ii"], 712, 942, [187, null]],
-[132, ["equal2", 20], 519, 636, [127, 133, 155, null]],
-[133, "box", 575, 636, [132, 189, null]],
+[127, ["until", 103], 498, 652, [180, 132, 451, null]],
+[128, ["storein", 20], 516, 720, [451, 186, 236, 136]],
+[129, ["string", "ii"], 638, 720, [186, null]],
+[130, "box", 638, 844, [236, 187, null]],
+[131, ["string", "ii"], 747, 844, [187, null]],
+[132, ["equal2", 20], 554, 884, [127, 133, 155, null]],
+[133, "box", 610, 884, [132, 189, null]],
[134, "hat", 360, 360, [null, 135, 215]],
[135, ["string", "draw cluster"], 418, 372, [134, null]],
-[136, ["vspace", 20], 463, 628, [180, 127]],
+[136, ["vspace", 20], 516, 844, [128, null]],
[137, "stack", 223, 1244, [407, 138, 296]],
[138, ["string", "draw cluster"], 281, 1244, [137, null]],
[139, "box", 435, 210, [142, 140, null]],
@@ -154,8 +154,8 @@
[152, ["string", "display prime factors"], 306, 658, [151, null]],
[153, ["storein", 0], 223, 700, [151, 154, 175, 100]],
[154, ["string", "level"], 291, 700, [153, null]],
-[155, "box", 575, 718, [132, 182, null]],
-[156, ["string", "ii"], 585, 504, [177, null]],
+[155, "box", 610, 966, [132, 182, null]],
+[156, ["string", "ii"], 620, 528, [177, null]],
[157, ["ifelse", [0, 0]],
583, 772, [162, 158, 443, 445, 110]],
[158, ["equal2", 0], 639, 738, [157, 163, 159, null]],
@@ -177,21 +177,21 @@
[174, ["vspace", 20], 583, 606, [104, 107]],
[175, "box", 291, 742, [153, 176, null]],
[176, ["string", "count"], 346, 742, [175, null]],
-[177, ["plus2", 0], 531, 504, [180, 156, 178]],
-[178, "box", 585, 546, [177, 179, null]],
-[179, ["string", "level"], 640, 546, [178, null]],
-[180, ["storein", 20], 463, 504, [206, 177, 181, 136]],
-[181, ["number", 0], 531, 586, [180, null]],
-[182, "box", 630, 718, [155, 183, null]],
-[183, ["string", "level"], 685, 718, [182, null]],
-[184, "box", 603, 860, [186, 185, null]],
-[185, ["string", "level"], 658, 860, [184, null]],
-[186, ["plus2", 0], 549, 818, [128, 129, 184]],
-[187, ["plus2", 0], 658, 942, [130, 131, 234]],
+[177, ["plus2", 0], 566, 528, [180, 156, 178]],
+[178, "box", 620, 570, [177, 179, null]],
+[179, ["string", "level"], 675, 570, [178, null]],
+[180, ["storein", 20], 498, 528, [206, 177, 181, 127]],
+[181, ["number", 0], 566, 610, [180, null]],
+[182, "box", 665, 966, [155, 183, null]],
+[183, ["string", "level"], 720, 966, [182, null]],
+[184, "box", 638, 762, [186, 185, null]],
+[185, ["string", "level"], 693, 762, [184, null]],
+[186, ["plus2", 0], 584, 720, [128, 129, 184]],
+[187, ["plus2", 0], 693, 844, [130, 131, 234]],
[188, "box", 789, 648, [106, 192, null]],
-[189, ["plus2", 0], 630, 636, [133, 103, 190]],
-[190, "box", 684, 678, [189, 191, null]],
-[191, ["string", "level"], 739, 678, [190, null]],
+[189, ["plus2", 0], 665, 884, [133, 103, 190]],
+[190, "box", 719, 926, [189, 191, null]],
+[191, ["string", "level"], 774, 926, [190, null]],
[192, "box", 844, 648, [188, 193, null]],
[193, ["string", "level"], 899, 648, [192, null]],
[194, ["plus2", 0], 231, 584, [204, 202, 196]],
@@ -233,10 +233,10 @@
[230, "box", 580, 346, [228, 231, null]],
[231, ["string", "factor"], 635, 346, [230, null]],
[232, ["vspace", 0], 443, 346, [227, 98]],
-[233, ["number", 1], 603, 900, [236, null]],
-[234, "box", 712, 984, [187, 235, null]],
-[235, ["string", "level"], 767, 984, [234, null]],
-[236, ["plus2", 0], 549, 900, [128, 233, 130]],
+[233, ["number", 1], 638, 802, [236, null]],
+[234, "box", 747, 886, [187, 235, null]],
+[235, ["string", "level"], 802, 886, [234, null]],
+[236, ["plus2", 0], 584, 802, [128, 233, 130]],
[237, "heading", 695, 564, [238, null]],
[238, ["plus2", 0], 641, 564, [104, 237, 106]],
[239, "hat", 180, 520, [null, 240, 254]],
@@ -274,7 +274,7 @@
[271, ["string", "action"], 298, 312, [270, null]],
[272, "stack", 219, 690, [2, 273, 461]],
[273, ["string", "action"], 277, 690, [272, null]],
-[274, "wait", 1064, 422, [479, 465, null]],
+[274, "wait", 1029, 398, [479, 465, null]],
[275, ["storein", 0], 219, 774, [461, 276, 280, null]],
[276, ["string", "number"], 287, 774, [275, null]],
[277, ["number", 1], 341, 858, [280, null]],
@@ -412,13 +412,13 @@
[407, "setgray", 223, 1202, [293, 408, 137]],
[408, ["number", 0], 296, 1202, [407, null]],
[409, "clean", 183, 170, [361, 381]],
-[410, "mousey", 1186, 298, [414, null]],
-[411, "height", 1256, 340, [412, null]],
-[412, ["division2", 0], 1186, 340, [414, 411, 413]],
-[413, ["number", 2], 1280, 382, [412, null]],
-[414, ["plus2", 0], 1132, 298, [475, 410, 412]],
-[415, ["division2", 0], 1192, 422, [465, 416, 477]],
-[416, "height", 1262, 422, [415, null]],
+[410, "mousey", 1151, 274, [414, null]],
+[411, "height", 1221, 316, [412, null]],
+[412, ["division2", 0], 1151, 316, [414, 411, 413]],
+[413, ["number", 2], 1245, 358, [412, null]],
+[414, ["plus2", 0], 1097, 274, [475, 410, 412]],
+[415, ["division2", 0], 1157, 398, [465, 416, 477]],
+[416, "height", 1227, 398, [415, null]],
[417, "toppos", 894, 428, [427, null]],
[418, "bottompos", 875, 678, [438, null]],
[419, "rightpos", 894, 346, [426, null]],
@@ -453,8 +453,8 @@
[448, "sandwichclampcollapsed", 720, 634, [439, 398, null]],
[449, "hat", 600, 500, [null, 450, 453]],
[450, ["string", "radiate"], 658, 512, [449, null]],
-[451, "stack", 481, 776, [127, 452, 128]],
-[452, ["string", "radiate"], 539, 776, [451, null]],
+[451, "stack", 516, 678, [127, 452, 128]],
+[452, ["string", "radiate"], 574, 678, [451, null]],
[453, "sandwichclampcollapsed", 600, 554, [449, 104, null]],
[454, "hat", 780, 240, [null, 455, 458]],
[455, ["string", "display scale"], 838, 252, [454, null]],
@@ -465,10 +465,10 @@
[460, ["string", "pause"], 1086, 138, [459, null]],
[461, "stack", 219, 732, [272, 462, 275]],
[462, ["string", "pause"], 277, 732, [461, null]],
-[463, ["repeat", 83], 1046, 214, [467, 464, 475, null]],
-[464, ["number", 10], 1105, 214, [463, null]],
-[465, ["division2", 20], 1122, 422, [274, 415, 466]],
-[466, ["number", 10], 1216, 504, [465, null]],
+[463, ["repeat", 83], 1011, 190, [467, 464, 475, null]],
+[464, ["number", 10], 1070, 190, [463, null]],
+[465, ["division2", 20], 1087, 398, [274, 415, 466]],
+[466, ["number", 10], 1181, 480, [465, null]],
[467, "sandwichclampcollapsed", 1028, 180, [459, 463, null]],
[468, "fullscreen", 200, 118, [0, 361]],
[469, ["product2", 20], 291, 994, [390, 252, 470]],
@@ -477,9 +477,8 @@
[472, "int", 827, 788, [321, 322]],
[473, "int", 583, 704, [334, 338]],
[474, "int", 637, 890, [337, 340]],
-[475, ["storein", 0], 1064, 256, [463, 476, 414, 479]],
-[476, ["string", "yy"], 1132, 256, [475, null]],
-[477, "box", 1286, 464, [415, 478, null]],
-[478, ["string", "yy"], 1341, 464, [477, null]],
-[479, ["vspace", 20], 1064, 340, [475, 274]],
-[-1, ["turtle", "Yertle"], 0.0, 0.0, 0.0, 0, 50, 5]] \ No newline at end of file
+[475, ["storein", 0], 1029, 232, [463, 476, 414, 479]],
+[476, ["string", "yy"], 1097, 232, [475, null]],
+[477, "box", 1251, 440, [415, 478, null]],
+[478, ["string", "yy"], 1306, 440, [477, null]],
+[479, ["vspace", 20], 1029, 316, [475, 274]]]