Ruby simple event algebra