[src/main.rs:12] tree = Program {
	body: [
		FnCall {
			name: "const",
			parameters: [
				ParameterBlock {
					body: [
						Memory(
							"block",
						),
					],
				},
			],
			yield_fn: Some(
				Scope {
					body: [
						FnCall {
							name: "let",
							parameters: [
								ParameterBlock {
									body: [
										Memory(
											"value",
										),
									],
								},
							],
							yield_fn: Some(
								Number(
									42,
								),
							),
						},
						FnCall {
							name: "fn",
							parameters: [
								ParameterBlock {
									body: [
										Memory(
											"function",
										),
									],
								},
							],
							yield_fn: Some(
								Scope {
									body: [
										FnCall {
											name: "print",
											parameters: [
												ParameterBlock {
													body: [
														String(
															"Hello from inside a function! param 0: ",
														),
													],
												},
												ParameterBlock {
													body: [
														FnCall {
															name: "p",
															parameters: [
																ParameterBlock {
																	body: [
																		Number(
																			0,
																		),
																	],
																},
															],
															yield_fn: None,
														},
													],
												},
											],
											yield_fn: None,
										},
										FnCall {
											name: "return",
											parameters: [
												ParameterBlock {
													body: [
														Boolean(
															false,
														),
													],
												},
											],
											yield_fn: None,
										},
									],
								},
							),
						},
					],
				},
			),
		},
		FnCall {
			name: "print",
			parameters: [
				ParameterBlock {
					body: [
						String(
							"Getting value: ",
						),
					],
				},
				ParameterBlock {
					body: [
						FnAccess {
							target: FnCall {
								name: "block",
								parameters: [],
								yield_fn: None,
							},
							call: FnCall {
								name: "value",
								parameters: [],
								yield_fn: None,
							},
						},
					],
				},
			],
			yield_fn: None,
		},
		FnAccess {
			target: FnCall {
				name: "block",
				parameters: [],
				yield_fn: None,
			},
			call: FnCall {
				name: "function",
				parameters: [
					ParameterBlock {
						body: [
							String(
								"test",
							),
						],
					},
				],
				yield_fn: None,
			},
		},
	],
}
