THE SATELLITE PROGRAMMING LANGUAGE TUTORIAL:
EVERYTHING IN SATELLITE BEGINS WITH THE WORD “satellite” LIKE THIS:
// files that have "main" must include satellite
satellite.include(satellite)
// a function is called a capsule in satellite
satellite.capsule satellite.main(satellite.container.list<satellite.variable.string> arguments)
{
// all satellite programs must have one "satellite.main" as the entry point, and arguments becomes the current directory arguments[0]
satellite.console.display(arguments[0])
// to do something in satellite, like declare a number, you need to say "satellite.variable.number"
satellite.variable.number my_int = 0
// to declare a string:
satellite.variable.string my_str = "some str"
// to use a statement:
satellite.variable.number display_count = 0
satellite.variable.number display_target = 99
satellite.statement.while(display_count < display_target)
{
// you must include brackets around capsules, and statements...
satellite.console.display("this message has been displayed " + display_count + " times.")
// to run another capsule, you start a new thread:
satellite.variable.thread thread_name = satellite.thread.new(capsule_name(arguments))
// you could argue that satellite reserves the .start() word from threads you declare; so not every single word is reservered in SATELLITE
thread_name.start()
// increase display_count from before...
display_count = display_count + 1
}
// random numbers
satellite.variable.number my_random_number = satellite.random.ultra(99)
// display the random number
satellite.console.display(my_random_number) // 99 digits ultra secure, takes 2000ms
satellite.console.display("hello, satellite!")
// satellite.main must return satellite, and you must satellite.include(satellite)
satellite.return(satellite)
}see https://github.com/satellitemadness1/satellite/ in the example folder, it has a full_test.satl if you don’t find it on this website, it might be on github.
