added interpreter factory (no interpreter is created more than once)
initialize InputParameter::set