This is sometimes considered the same as imperative. In fact it shares all of the features of imperative. That is it has a state and also runs statements in a specific order. What can separate the two is that procedural is more based around procedures than imperative. As such well designed programs should lean more towards being identified as procedural than imperative. The interested reader can look into the differences.