part of DSL for Inductive types