In this paper we consider three di erent kinds of domain dependent control knowledge (temporal, procedural and HTN-based) that are useful in planning. Our approach is declarative and relies on the language of logic programming with answer set semantics (LPASS). We show that the addition of these three kinds of control knowledge only involves adding a few more rules to a planner written in LPASS that can plan without any control knowledge. Thus domain dependent control knowledge can be modularly added to (or removed from) a planning problem without the need of modifying the planner. We formally prove the correctness of our planner, both in the absence and presence of the control knowledge. Finally, we do some initial experimentation that shows the reduction in planning time when procedural domain knowledge is used and the plan length is big.