about summary refs log tree commit diff stats
path: root/040brace.cc
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2015-05-12 17:00:56 -0700
committerKartik K. Agaram <vc@akkartik.com>2015-05-12 17:10:33 -0700
commit827898fc1b41e1974bf4ec2eebbd97fe23ff3d08 (patch)
tree437518c84d6df812c6af440c79f578e0949a5c8e /040brace.cc
parent3663ca6c2d4c42c4a7bf6af4b2edf71dd8d10dd7 (diff)
downloadmu-827898fc1b41e1974bf4ec2eebbd97fe23ff3d08.tar.gz
1357 - temporarily revert floating-point support
Diffstat (limited to '040brace.cc')
-rw-r--r--040brace.cc31
1 files changed, 15 insertions, 16 deletions
diff --git a/040brace.cc b/040brace.cc
index f4c493c9..224dbf96 100644
--- a/040brace.cc
+++ b/040brace.cc
@@ -69,10 +69,10 @@ void transform_braces(const recipe_number r) {
       }
       else {
         reagent ing;
-        ing.set_value(mu_integer(open_braces.top()-index));
+        ing.set_value(open_braces.top()-index);
         ing.types.push_back(Type_number["offset"]);
         inst.ingredients.push_back(ing);
-        trace("after-brace") << "jump " << to_int(ing.value) << ":offset";
+        trace("after-brace") << "jump " << ing.value << ":offset";
         trace("after-brace") << index << ": " << ing.to_string();
         trace("after-brace") << index << ": " << Recipe[r].steps.at(index).ingredients.at(0).to_string();
       }
@@ -85,10 +85,10 @@ void transform_braces(const recipe_number r) {
       }
       else {
         reagent ing;
-        ing.set_value(mu_integer(matching_brace(open_braces.top(), braces) - index - 1));
+        ing.set_value(matching_brace(open_braces.top(), braces) - index - 1);
         ing.types.push_back(Type_number["offset"]);
         inst.ingredients.push_back(ing);
-        trace("after-brace") << "jump " << to_int(ing.value) << ":offset";
+        trace("after-brace") << "jump " << ing.value << ":offset";
       }
     }
     else if (inst.operation == Recipe_number["loop-if"]) {
@@ -99,10 +99,10 @@ void transform_braces(const recipe_number r) {
       }
       else {
         reagent ing;
-        ing.set_value(mu_integer(open_braces.top()-index));
+        ing.set_value(open_braces.top()-index);
         ing.types.push_back(Type_number["offset"]);
         inst.ingredients.push_back(ing);
-        trace("after-brace") << "jump-if " << inst.ingredients.at(0).name << ", " << to_int(ing.value) << ":offset";
+        trace("after-brace") << "jump-if " << inst.ingredients.at(0).name << ", " << ing.value << ":offset";
       }
     }
     else if (inst.operation == Recipe_number["break-if"]) {
@@ -113,10 +113,10 @@ void transform_braces(const recipe_number r) {
       }
       else {
         reagent ing;
-        ing.set_value(mu_integer(matching_brace(open_braces.top(), braces) - index - 1));
+        ing.set_value(matching_brace(open_braces.top(), braces) - index - 1);
         ing.types.push_back(Type_number["offset"]);
         inst.ingredients.push_back(ing);
-        trace("after-brace") << "jump-if " << inst.ingredients.at(0).name << ", " << to_int(ing.value) << ":offset";
+        trace("after-brace") << "jump-if " << inst.ingredients.at(0).name << ", " << ing.value << ":offset";
       }
     }
     else if (inst.operation == Recipe_number["loop-unless"]) {
@@ -127,10 +127,10 @@ void transform_braces(const recipe_number r) {
       }
       else {
         reagent ing;
-        ing.set_value(mu_integer(open_braces.top()-index));
+        ing.set_value(open_braces.top()-index);
         ing.types.push_back(Type_number["offset"]);
         inst.ingredients.push_back(ing);
-        trace("after-brace") << "jump-unless " << inst.ingredients.at(0).name << ", " << to_int(ing.value) << ":offset";
+        trace("after-brace") << "jump-unless " << inst.ingredients.at(0).name << ", " << ing.value << ":offset";
       }
     }
     else if (inst.operation == Recipe_number["break-unless"]) {
@@ -142,10 +142,10 @@ void transform_braces(const recipe_number r) {
       }
       else {
         reagent ing;
-        ing.set_value(mu_integer(matching_brace(open_braces.top(), braces) - index - 1));
+        ing.set_value(matching_brace(open_braces.top(), braces) - index - 1);
         ing.types.push_back(Type_number["offset"]);
         inst.ingredients.push_back(ing);
-        trace("after-brace") << "jump-unless " << inst.ingredients.at(0).name << ", " << to_int(ing.value) << ":offset";
+        trace("after-brace") << "jump-unless " << inst.ingredients.at(0).name << ", " << ing.value << ":offset";
       }
     }
     else {
@@ -380,14 +380,13 @@ recipe test-factorial [
   1:integer <- copy 5:literal
   2:integer <- copy 1:literal
   {
-    3:boolean <- equal 1:integer, 1:literal
+    3:boolean <- equal 1:integer 1:literal
     break-if 3:boolean
-#?     $print 1:integer, [ ], 2:integer, [
-#? ]
 #    $print 1:integer
     2:integer <- multiply 2:integer, 1:integer
     1:integer <- subtract 1:integer, 1:literal
     loop
   }
+  4:integer <- copy 2:integer  # trigger a read
 ]
-+mem: storing 120 in location 2
++mem: location 2 is 120