Ve většině jazyků se příkazy odlišují od výrazů tím, že příkazy nevracejí hodnotu a jsou volány pouze pro své [[Vedlejší účinek (programování)|vedlejší efektyúčinky]], zatímco výrazy vracejí hodnotu a často nemají žádné vedlejší efektyúčinky. Mezi [[imperativní programování|imperativními]] jazyky je [[ALGOL 68]] jedním z mála jazyků, kde i příkazy mohou vracet výsledek. V jazycích, které kombinují imperativní a [[Funkcionálnífunkcionální programování|funkcionální]] přístup, jako jsou jazyky skupiny [[Lisp]]u, se výrazy a příkazy nerozlišují; dokonce i výrazy prováděné v sekvenčním kontextu pouze pro své [[vedlejší účinek|vedlejší účinky]] a výrazy vracející hodnoty nejsou považovány za výrazy. [[Čistě funkcionální]] jazyky příkazy vůbec nemají, mají pouze výrazy.