a *slightly* more compact Iris example to test a possible DSL framework in which DSLs are just inlined to core operators; also split up Wolfe module into different traits