graph + compiler