Programming that involves sending commands. Output is determined by the language