Chapter 9. Evaluating AST

In this chapter, we traverse the AST that was built earlier and create the methods to evaluate (or execute) the nodes according to their meaning. Another interesting feature of Raku, the so called getters, is used in the code.

In this chapter, we traverse the AST that was built earlier and create the methods to evaluate (or execute) the nodes according to their meaning. Another interesting feature of Raku, the so called getters, is used in the code.

Chapter 8. Building AST. Part 2

In the second part of this chapter, I am talking about building the AST fragments for hosting strings, arrays, and hashes, as well as bigger constructs such as expressions, and how to manipulate these elements in a program.

In the second part of this chapter, I am talking about building the AST fragments for hosting strings, arrays, and hashes, as well as bigger constructs such as expressions, and how to manipulate these elements in a program.

Chapter 8. Building AST. Part 1

In this chapter, we will be working on implementing AST, the abstract syntax tree, that represents the program in the form of connected nodes, which are responsible for atomic actions such as variable declaration, or computing a sum of two values, or calling a function. This is probably the most difficult and brain-puzzling chapters in the book.

In this chapter, we will be working on implementing AST, the abstract syntax tree, that represents the program in the form of connected nodes, which are responsible for atomic actions such as variable declaration, or computing a sum of two values, or calling a function. This is probably the most difficult and brain-puzzling chapters in the book.

Chapter 7. Arrays and Hashes

In this chapter, we will extend the Lingua language with aggregate data types: arrays and hashes. From this point, we will call variables that contain numbers and strings scalar variables.

In this chapter, we will extend the Lingua language with aggregate data types: arrays and hashes. From this point, we will call variables that contain numbers and strings scalar variables.