Files
Toy/scripts/rule110.toy
2023-02-14 09:21:22 +00:00

50 lines
734 B
Plaintext

//number of iterations
var SIZE: int const = 100;
//lookup table
var lookup = [
"*": [
"*": [
"*": " ",
" ": "*"
],
" ": [
"*": "*",
" ": " "
]
], " ": [
"*": [
"*": "*",
" ": "*"
],
" ": [
"*": "*",
" ": " "
]
]];
//initial line to build from
var prev: string = "";
for (var i = 0; i < SIZE -1; i++) {
prev += " ";
}
prev += "*"; //initial
print prev + "\n";
//run
for (var iteration = 0; iteration < SIZE -1; iteration++) {
//left
var output = (lookup[" "][prev[0]][prev[1]]);
//middle
for (var i = 1; i < SIZE-1; i++) {
output += (lookup[prev[i-1]][prev[i]][prev[i+1]]);
}
//right
output += (lookup[prev[SIZE-2]][prev[SIZE-1]][" "]);
print output + "\n";
prev = output;
}