graffiti - a library for declarative computation