Run passes this to
main as stdin. Share links include it.This page runs SSPUR's checker and interpreter in your browser, compiled to WebAssembly. Your code stays on this page; a share link carries it in the part of the URL after #, which the server never sees.
Programs run in the interpreter, the same one sspur run --interp uses, so output and test results match the command line. Some things work differently here:
fsworks on a file system in memory that starts empty, with/and/tmp, on every run. Symlinks aren't supported.envis empty andargs()is[].read_lineandread_linesread the Input tab.timeuses the browser's clock.sleep_msmoves the clock forward instead of waiting.- Recursion goes 20,000 calls deep, as with
sspur run --interp, when each call is small. Calls with larger bodies, or through lambdas, report the samestack overflowerror sooner, after 10,000 or more. Data nested thousands of levels deep, such as a long linked list, can still run out of the browser's own stack, which is much smaller. partasks run one after another, which gives the same results unless a task waits on a channel that a later task fills.proc,extern fn(C interop), named time zones, packages, services and native code aren't available. They report an error instead of running.
The token count is a rough estimate of about four characters per token, not the tokenizers the token benchmark uses.
To run programs on your machine, with native code, see Installation. The language reference covers the whole language, and SSPUR in five minutes is a quick tour.