diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2015-05-02 15:52:22 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2015-05-02 22:56:13 -0700 |
commit | 22b3069272c1a177e814a7c4e769e20858e2b368 (patch) | |
tree | 761199b26823fe5ba11af66108e95ece1bc4f02c /cpp/.traces/channel-read-not-full | |
parent | a316f1e4168a98ba8c1bbe7b091f8a7e7b3f03e6 (diff) | |
download | mu-22b3069272c1a177e814a7c4e769e20858e2b368.tar.gz |
1242 - simpler implementation for 'scenario'
Also now has the side effect that scenarios can have any number of 'run' or check or any future blocks, in any order.
Diffstat (limited to 'cpp/.traces/channel-read-not-full')
-rw-r--r-- | cpp/.traces/channel-read-not-full | 65 |
1 files changed, 57 insertions, 8 deletions
diff --git a/cpp/.traces/channel-read-not-full b/cpp/.traces/channel-read-not-full index d05be04b..07b46cdd 100644 --- a/cpp/.traces/channel-read-not-full +++ b/cpp/.traces/channel-read-not-full @@ -1,3 +1,44 @@ +parse/0: instruction: run +parse/0: ingredient: {name: " + 1:address:channel <- init-channel 1:literal/capacity + 1:address:channel <- write 1:address:channel, 34:literal + _, 1:address:channel <- read 1:address:channel + 2:integer <- channel-empty? 1:address:channel + 3:integer <- channel-full? 1:address:channel + ", value: 0, type: 0, properties: [" + 1:address:channel <- init-channel 1:literal/capacity + 1:address:channel <- write 1:address:channel, 34:literal + _, 1:address:channel <- read 1:address:channel + 2:integer <- channel-empty? 1:address:channel + 3:integer <- channel-full? 1:address:channel + ": "literal-string"]} +parse/0: instruction: memory-should-contain +parse/0: ingredient: {name: " + 2 <- 1 # empty? + 3 <- 0 # full? + ", value: 0, type: 0, properties: [" + 2 <- 1 # empty? + 3 <- 0 # full? + ": "literal-string"]} +after-brace/0: recipe channel-read-not-full +after-brace/0: run ... +after-brace/0: memory-should-contain ... +new/0: routine allocated memory from 1000 to 101000 +schedule/0: channel-read-not-full +run/0: instruction channel-read-not-full/0 +run/0: run {name: " + 1:address:channel <- init-channel 1:literal/capacity + 1:address:channel <- write 1:address:channel, 34:literal + _, 1:address:channel <- read 1:address:channel + 2:integer <- channel-empty? 1:address:channel + 3:integer <- channel-full? 1:address:channel + ", value: 0, type: 0, properties: [" + 1:address:channel <- init-channel 1:literal/capacity + 1:address:channel <- write 1:address:channel, 34:literal + _, 1:address:channel <- read 1:address:channel + 2:integer <- channel-empty? 1:address:channel + 3:integer <- channel-full? 1:address:channel + ": "literal-string"]} parse/0: instruction: init-channel parse/0: ingredient: {name: "1", value: 0, type: 0, properties: ["1": "literal", "capacity": ]} parse/0: product: {name: "1", value: 0, type: 2-10, properties: ["1": "address":"channel"]} @@ -15,15 +56,13 @@ parse/0: product: {name: "2", value: 0, type: 1, properties: ["2": "integer"]} parse/0: instruction: channel-full? parse/0: ingredient: {name: "1", value: 0, type: 2-10, properties: ["1": "address":"channel"]} parse/0: product: {name: "3", value: 0, type: 1, properties: ["3": "integer"]} -after-brace/0: recipe test-channel-read-not-full +after-brace/0: recipe tmp0 after-brace/0: init-channel ... after-brace/0: write ... after-brace/0: read ... after-brace/0: channel-empty? ... after-brace/0: channel-full? ... -new/0: routine allocated memory from 1000 to 101000 -schedule/0: test-channel-read-not-full -run/0: instruction test-channel-read-not-full/0 +run/0: instruction tmp0/0 run/0: {name: "1", value: 1, type: 2-10, properties: ["1": "address":"channel"]} <- init-channel {name: "1", value: 1, type: 0, properties: ["1": "literal", "capacity": ]} run/0: instruction init-channel/0 run/0: {name: "default-space", value: 0, type: 2-5-1, properties: ["default-space": "address":"array":"location"]} <- new {name: "location", value: 1, type: 0, properties: ["location": "type"]}, {name: "30", value: 30, type: 0, properties: ["30": "literal"]} @@ -90,7 +129,7 @@ run/0: reply {name: "result", value: 1, type: 2-10, properties: ["result": "addr mem/0: location 1002 is 1031 run/0: result 0 is 1031 mem/0: storing 1031 in location 1 -run/0: instruction test-channel-read-not-full/1 +run/0: instruction tmp0/1 run/0: {name: "1", value: 1, type: 2-10, properties: ["1": "address":"channel"]} <- write {name: "1", value: 1, type: 2-10, properties: ["1": "address":"channel"]}, {name: "34", value: 34, type: 0, properties: ["34": "literal"]} mem/0: location 1 is 1031 run/0: instruction write/0 @@ -273,7 +312,7 @@ run/0: reply {name: "chan", value: 1, type: 2-10, properties: ["chan": "address" mem/0: location 1039 is 1031 run/0: result 0 is 1031 mem/0: storing 1031 in location 1 -run/0: instruction test-channel-read-not-full/2 +run/0: instruction tmp0/2 run/0: {name: "_", value: 0, type: 0, properties: ["_": "dummy"]}, {name: "1", value: 1, type: 2-10, properties: ["1": "address":"channel"]} <- read {name: "1", value: 1, type: 2-10, properties: ["1": "address":"channel"]} mem/0: location 1 is 1031 run/0: instruction read/0 @@ -399,7 +438,7 @@ mem/0: location 1132 is 1031 run/0: result 0 is 34 run/0: result 1 is 1031 mem/0: storing 1031 in location 1 -run/0: instruction test-channel-read-not-full/3 +run/0: instruction tmp0/3 run/0: {name: "2", value: 2, type: 1, properties: ["2": "integer"]} <- channel-empty? {name: "1", value: 1, type: 2-10, properties: ["1": "address":"channel"]} mem/0: location 1 is 1031 run/0: instruction channel-empty?/0 @@ -443,7 +482,7 @@ run/0: reply {name: "result", value: 4, type: 3, properties: ["result": "boolean mem/0: location 1197 is 1 run/0: result 0 is 1 mem/0: storing 1 in location 2 -run/0: instruction test-channel-read-not-full/4 +run/0: instruction tmp0/4 run/0: {name: "3", value: 3, type: 1, properties: ["3": "integer"]} <- channel-full? {name: "1", value: 1, type: 2-10, properties: ["1": "address":"channel"]} mem/0: location 1 is 1031 run/0: instruction channel-full?/0 @@ -541,3 +580,13 @@ run/0: reply {name: "result", value: 6, type: 3, properties: ["result": "boolean mem/0: location 1230 is 0 run/0: result 0 is 0 mem/0: storing 0 in location 3 +run/0: instruction channel-read-not-full/1 +run/0: memory-should-contain {name: " + 2 <- 1 # empty? + 3 <- 0 # full? + ", value: 0, type: 0, properties: [" + 2 <- 1 # empty? + 3 <- 0 # full? + ": "literal-string"]} +run/0: checking location 2 +run/0: checking location 3 |