---
source: kcl/src/simulation_tests.rs
description: Program memory after executing multi_transform.kcl
snapshot_kind: text
---
{
  "environments": [
    {
      "bindings": {
        "HALF_TURN": {
          "type": "Number",
          "value": 180.0,
          "__meta": []
        },
        "QUARTER_TURN": {
          "type": "Number",
          "value": 90.0,
          "__meta": []
        },
        "THREE_QUARTER_TURN": {
          "type": "Number",
          "value": 270.0,
          "__meta": []
        },
        "ZERO": {
          "type": "Number",
          "value": 0.0,
          "__meta": []
        },
        "transform": {
          "type": "Function",
          "expression": {
            "body": {
              "body": [
                {
                  "argument": {
                    "elements": [
                      {
                        "end": 68,
                        "properties": [
                          {
                            "end": 66,
                            "key": {
                              "end": 50,
                              "name": "translate",
                              "start": 41,
                              "type": "Identifier"
                            },
                            "start": 41,
                            "type": "ObjectProperty",
                            "value": {
                              "elements": [
                                {
                                  "end": 59,
                                  "left": {
                                    "end": 55,
                                    "raw": "30",
                                    "start": 53,
                                    "type": "Literal",
                                    "type": "Literal",
                                    "value": 30
                                  },
                                  "operator": "*",
                                  "right": {
                                    "end": 59,
                                    "name": "i",
                                    "start": 58,
                                    "type": "Identifier",
                                    "type": "Identifier"
                                  },
                                  "start": 53,
                                  "type": "BinaryExpression",
                                  "type": "BinaryExpression"
                                },
                                {
                                  "end": 62,
                                  "raw": "0",
                                  "start": 61,
                                  "type": "Literal",
                                  "type": "Literal",
                                  "value": 0
                                },
                                {
                                  "end": 65,
                                  "raw": "0",
                                  "start": 64,
                                  "type": "Literal",
                                  "type": "Literal",
                                  "value": 0
                                }
                              ],
                              "end": 66,
                              "start": 52,
                              "type": "ArrayExpression",
                              "type": "ArrayExpression"
                            }
                          }
                        ],
                        "start": 39,
                        "type": "ObjectExpression",
                        "type": "ObjectExpression"
                      },
                      {
                        "end": 105,
                        "properties": [
                          {
                            "end": 103,
                            "key": {
                              "end": 84,
                              "name": "rotation",
                              "start": 76,
                              "type": "Identifier"
                            },
                            "start": 76,
                            "type": "ObjectProperty",
                            "value": {
                              "end": 103,
                              "properties": [
                                {
                                  "end": 101,
                                  "key": {
                                    "end": 93,
                                    "name": "angle",
                                    "start": 88,
                                    "type": "Identifier"
                                  },
                                  "start": 88,
                                  "type": "ObjectProperty",
                                  "value": {
                                    "end": 101,
                                    "left": {
                                      "end": 97,
                                      "raw": "45",
                                      "start": 95,
                                      "type": "Literal",
                                      "type": "Literal",
                                      "value": 45
                                    },
                                    "operator": "*",
                                    "right": {
                                      "end": 101,
                                      "name": "i",
                                      "start": 100,
                                      "type": "Identifier",
                                      "type": "Identifier"
                                    },
                                    "start": 95,
                                    "type": "BinaryExpression",
                                    "type": "BinaryExpression"
                                  }
                                }
                              ],
                              "start": 86,
                              "type": "ObjectExpression",
                              "type": "ObjectExpression"
                            }
                          }
                        ],
                        "start": 74,
                        "type": "ObjectExpression",
                        "type": "ObjectExpression"
                      }
                    ],
                    "end": 109,
                    "start": 33,
                    "type": "ArrayExpression",
                    "type": "ArrayExpression"
                  },
                  "end": 109,
                  "start": 26,
                  "type": "ReturnStatement",
                  "type": "ReturnStatement"
                }
              ],
              "end": 111,
              "start": 22
            },
            "end": 111,
            "params": [
              {
                "type": "Parameter",
                "identifier": {
                  "end": 17,
                  "name": "i",
                  "start": 16,
                  "type": "Identifier"
                },
                "optional": false
              }
            ],
            "start": 15,
            "type": "FunctionExpression"
          },
          "memory": {
            "environments": [
              {
                "bindings": {
                  "HALF_TURN": {
                    "type": "Number",
                    "value": 180.0,
                    "__meta": []
                  },
                  "QUARTER_TURN": {
                    "type": "Number",
                    "value": 90.0,
                    "__meta": []
                  },
                  "THREE_QUARTER_TURN": {
                    "type": "Number",
                    "value": 270.0,
                    "__meta": []
                  },
                  "ZERO": {
                    "type": "Number",
                    "value": 0.0,
                    "__meta": []
                  }
                },
                "parent": null
              }
            ],
            "currentEnv": 0,
            "return": null
          },
          "__meta": [
            {
              "sourceRange": [
                15,
                111,
                0
              ]
            }
          ]
        }
      },
      "parent": null
    }
  ],
  "currentEnv": 0,
  "return": null
}
