written entirely within goboscript by @aspizu main.gs: costumes "blank.svg"; onflag { wait 0.4; show list; repeat 20 { add random(0.0, 10.0) to list; } say "press space to start sorting!"; wait_until key_pressed("space"); say ""; reset_timer; sleepsort; until (length list == 21) { list[1] = "t: " & timer(); } } proc sleepsort { n = 0; repeat length list { n = list[1]; delete list[1]; clone; } n = 999; add 0 to list; broadcast "sleepsort"; } on "sleepsort" { if n != 999 { wait n; add n to list; } } stage.gs: costumes "blank.svg"; onflag { delete list; }