Spaces are somehow the most important part of programming. In some languages like Assembly you will understand this however their actual name outside Arendelle is not spaces, but "Variables". As I hate that name we have this much more pretty name "Space".
Why we call them space? What are they anyway?
Think of when someone asks: What is the 2 + 3?
While the answer is obvious, the path you take to get into that answer has some points to think about how this thing actually happens in your mind?
In your mind, you create a memory box called "the first number" and then another box with the name "the second number". Now you put 2 in your first box and then 3 in your second box of memory.
Now your mind creates a new memory box called "Result" and then it reads the 2 and 3 from those boxes, calculates the sum of them and then it creates the 5 and stores the 5 into the result box.
This is the way that our minds memory works. And as the computer systems are based on our minds they have memory too! We can store data and well this is the definition of a computer: A device that does an operation based on instructions by the user on some data in this section we will learn how to work with datas.
A space is a memory space in your computer's temporary data storage called a RAM, Just like the way our mind has two separated memories our computers got them two, This two memory systems are "Temporary Memory" and "Long-time Memory". What are those? Well, the temporary memory is a small memory which is fast so when your system is thinking it uses that memory. This memory erases each time you shutdown your system. There is also another memory which stores your large amount of data as long as you want and those data stays there till you manually delete them. This memory is much slower than RAM but it can keep large data and those data remains there while your system is turned down. There are many different kinds of this memories but Hard Disk Drives and SSD (flash drives) are the most well-known.
Till today you have used the long time memory for storing your files, applications, anything. But from now on you will learn how to use RAM to create your blueprints.
Now as you see we have created a space with the name of @age and the value of 19 so @age = 19 and then we have @year = 2014 and then @size = 42.
So now you want to change 10 to 1000 just all you need is to change the 10 in the ( number , 10 ).
Is that what sources are all about?
When Arendelle sees your code it first creates a space with the value of 12, Now in line 2, The we have created the space for second time! Is it possible? Hell yes! It's not about creating the space for the second time! Once @space is defined the code: ( space , 24) just changes the value of @space.
So when Arendelle evaluates the code, It creates @space with the value of 12 and then when it's going to run ( space , @space + 5 ) It first reads the @space + 5 and as the @space is signed with 12 it changes the expression to 12 + 5, After it evaluates the code it gives 17 back from the math engine and then changes the @space value to 17.
As you observed this blueprints are more advanced then what you have seen till now. Its like you get super hero powers when you use spaces!
So now its time for you to practice!