Red Foundations: Difference between revisions

m
no edit summary
(Created page with "A Red program is just a set of elements in a block. When not interpreted, elements can be in any order, when you evaluate the block, a set of rules are applied to interpret th...")
 
mNo edit summary
Line 1:
(WORK IN PROGRESS)
A Red program is just a set of elements in a block. When not interpreted, elements can be in any order, when you evaluate the block, a set of rules are applied to interpret the block elements a data takes life in a program.
 
(Let's introduced manipulating block first, using RED Elements)
 
 
A Red program is just a set of elements in a container called a block. The code you create in your text editor, once loaded, it is inserted inside a block whose square braces are not visible.
 
Here is a simple program:
 
[Red [Tittle: {My Program}] a: 22 Probe a]
 
DO [Red [Tittle: {My Program}] a: 22 Probe a]
22
== 22
>>
 
Let's assign to the word my-program the above block of code
 
my-program: [Red [Tittle: {My Program}] a: 22 Probe a]
 
And run it
 
DO my-program
22
== 22
>>
 
The result is the same.
 
A block is composed of elements recognizable by Red interpreter. The above block is made of 6 elements:
 
probe length? my-program
== 6
>>
 
Let's print the first element
 
probe pick my-program/1
== Red
>>
 
Now, let's print the last element:
 
probe pick my-program/6
== a
>>
 
Or use a shortcut:
 
probe last my-program
== a
>>
 
We can modify the program to print 33 instead of 22:
 
change at my-program 4 33
 
Read it as: change (at my-program 4) 33
 
Run the code on the console:
 
>> change (at my-program 4) 33
== [Probe a]
>> probe my-program
[Red [Tittle: "My Program"] a: 33 Probe a]
== [Red [Tittle: "My Program"] a: 33 Probe a]
>>
 
And run the code:
 
>> do my-program
33
== 33
>>
 
Now the program has been changed and it outputs 33
 
----------------
 
You have the following bricks of Red Element in blocks:
Line 12 ⟶ 89:
 
code-to-execute: []
 
...
 
 
They can be in any order when stored but to be executed the order should follow some simple rules.
 
 
A Red program is just a set of elements in a block. When not interpreted, elements can be in any order, when you evaluate the block, a set of rules are applied to interpret the block elements a data takes life in a program.