HELLO Youtube, Hostile here.
I will write about Google Code-A-Snowflake.
//** snowflake example **//https://santatracker.google.com/snowflake.html?bg=6&B=c29b6f6-(((p100-r30-)12-f10-)35-r180-(f10-)35-l150-)12-
You can view code by clicking on "Try it yourself".
:: THE BASICS ::
The editor is terrible. It does not allow you for writing long code but it is extremely useful for experimenting. One way of doing so is by using the next functionality. Once your code is *executed*, you will be taken to a fake next page so your progress isn't lost.
You can *slow* the execution of your code by placing halting loops in between each instruction. As an example : (rotate 180, rotate 180)loop100 . This instruction will accomplish totally nothing but slow down your code.
Next-thing-next is the compilation of the code. When you go to a snowflake url link, the code will be compiled in the background. It is like 1000x times faster than the web page. If you write a snowflake, you can directly write code in url once you know how it works.
:: Programming Snowflake ::
The first part of the string is garbage -> "https://santatracker.google.com/snowflake.html?bg=6&B=c29b6f6-"
The second part of the string is where your code is stored like that : -(((p100-r30-)12-f10-)35-r180-(f10-)35-l150-)12-.
Let's analyze the syntaxicality of thing :
* Firstly, each command is seperated by trema -> " - "
* p100 is shape
* r30 is a shortened form of right 30
* l150 is a shortened form of left 30
* f10 means forward
* b10 means backward
* A matching pair of "(" and ")" is your loops and nested loops
* A ")12" means loop 12.
There are 3 shapes : p for pentagon, s for square and t for triangle.
The numbers after the shapes are the size parameter.
c29b6f6 means color + its code. The code is equivalent to the hexadecimal value of the color.
I am not sure if that thing is used in webpages.
The maximum size limit of your program is the longest url that broswer can support. The size is 2047 url characters.
If you enter that exact amount in the URL Google Shortener, it may error.
:: More basics ::
You can modify the color parameter (tested !) with any value you want. If you enter wrong your hex code, like if you missed one of the 6 hex digits, the web page will try to auto-pick from one of its default colors.
You can auto-generate string from your visual program by clicking the play button. It will refresh and make new url for program.
The play button is 1000x times faster for generating your written program.
The forward and backward accept parameter from 10 to 99 inclusive. [10,99]
It is the same for the rotation function. [10,99]
Shapes support size from 20 to 150 inclusive. [20,150]
It is the same for all shapes.
If you pick parameter outside those ranges, it will auto-pick from one its default values.
:: Tips ::
How to fill ?
If you want to make a certain shape it is pretty much impossible.
You can however make some textures and stuff. If you do (square20, forward, 90 degree)loop 4, it will generate a fabric texture (or a grid with small holes depending on how you see it).
You can move positions simply by selecting x,y with move commands (example : move forward by Y, rotate 90 and move by X). It is important to know in what position and orientation you will end if you want to do some drawings.
The end stage of a snowflake is always : set turtle on 0,0 upwards, copy whole shape, (turn 30 degrees, paste)repeat 5 times.
:: History ::
Snowflake is directly inspired by the LOGO project. The LOGO project started in the 50s and created the LOGO language. Its aim was educational.
The programmer moves a controller (Turtle) and specifies orientation, movement with his code in the programming language. The turtle moves and can draw things. It is pretty much the same as snowflakes. The LOGO is used sometimes by professionals (not kids or teachers) to generate graphics.
I don't know if it is possible to use LOGO for drunkard walk, ant walk or Conway Game of Life (any of its variants). I don't see why it can't. I believe it is fairly complex language.
Students apparently got their own robot turtles.
It works the same as generating graphics on a computer screen.