open Functoria.DSL type random = job val random : random typ val no_random : random impl val default_random : random impl