Differentiate procedural and non procedural programming languages?