In this section, you will study the life of a Julia program and how it is actually represented and interpreted by Julia. You will also learn what is meant by "a language expressing its own code as a data structure of itself."
This section will act as a foundation for learning about the concept of metaprogramming and how Julia uses it for generating code.
Firstly, it is very important to know that every Julia program starts out as a string. Let's consider a short program for adding two variables as our Julia code and use it to learn how Julia interprets programs:
code = "a + b"
It would look like this:
Now, if you parse the preceding string code
, it would return an object of type Expression
. Let's check it by actually parsing an example Julia program and checking for its type:
check = parse(code)
The output would look like this:
You will learn...