deleted ProgramImpl and FilterBindingImpl (simplified)