diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2015-04-16 10:35:49 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2015-04-16 10:35:49 -0700 |
commit | db5c9550e972d114aaabb95b14cfd1e3ea185349 (patch) | |
tree | 9217134d1154e45f5375f94c9b5788530fbf8cb7 /cpp/.traces/convert_names_transforms_container_elements | |
parent | d6852155e5308e2bb347402bf9e069c7153c2319 (diff) | |
download | mu-db5c9550e972d114aaabb95b14cfd1e3ea185349.tar.gz |
1069 - rename record/field to container/element
This seems more obvious to laypeople. I've also come up with a design for sum types: I'm going to call them exclusive containers. You call 'get' on containers, 'index' on arrays, and 'maybe-convert' on exclusive containers (as well as tagged types, but that's even later).
Diffstat (limited to 'cpp/.traces/convert_names_transforms_container_elements')
-rw-r--r-- | cpp/.traces/convert_names_transforms_container_elements | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/cpp/.traces/convert_names_transforms_container_elements b/cpp/.traces/convert_names_transforms_container_elements new file mode 100644 index 00000000..0dd4f7e8 --- /dev/null +++ b/cpp/.traces/convert_names_transforms_container_elements @@ -0,0 +1,31 @@ +parse/0: instruction: 18 +parse/0: ingredient: {name: "0", value: 0, type: 6, properties: ["0": "point"]} +parse/0: ingredient: {name: "y", value: 0, type: 0, properties: ["y": "offset"]} +parse/0: product: {name: "a", value: 0, type: 1, properties: ["a": "integer"]} +parse/0: instruction: 18 +parse/0: ingredient: {name: "0", value: 0, type: 6, properties: ["0": "point"]} +parse/0: ingredient: {name: "x", value: 0, type: 0, properties: ["x": "offset"]} +parse/0: product: {name: "b", value: 0, type: 1, properties: ["b": "integer"]} +name/0: element y of type point is at offset 1 +name/0: assign a 1 +name/0: element x of type point is at offset 0 +name/0: assign b 2 +after-brace/0: recipe main +after-brace/0: get ... +after-brace/0: get ... +run/0: instruction main/0 +run/0: ingredient 0 is 0 +run/0: ingredient 1 is y +run/0: address to copy is 1 +run/0: its type is 1 +mem/0: location 1 is 0 +run/0: product 0 is 0 +mem/0: storing 0 in location 1 +run/0: instruction main/1 +run/0: ingredient 0 is 0 +run/0: ingredient 1 is x +run/0: address to copy is 0 +run/0: its type is 1 +mem/0: location 0 is 0 +run/0: product 0 is 0 +mem/0: storing 0 in location 2 |