Requires that `define` is a function before calling it