packages feed

gulcii-0.2.0.1: lib/event.gu

# event
wait = \n w e . w n
event = \x w e . e x
merge = \al bl . al (\a as . bl (\b bs . a (\aw . b (\bw . lessthan aw bw (cons a (merge as (cons (wait (sub bw aw)) bs))) (cons b (merge (cons (wait (sub aw bw)) as) bs))) (\e . cons b (merge al bs))) (\e . cons a (merge as bl))) al) bl
merges = foldr merge nil
play = \l . l (\x xs . x (\w . { wait : w } (play xs)) (\e . e (play xs))) (error play)