So, here's my version of chronosort: Given a set of natural numbers, place them all on a timer, with a timeout equal to the number, and callback argument also equal to the number. The callback function simply appends its argument to the end of a shared list. At some point you will have a sorted and (eventually) complete list :)