Skutek uboczny (informatyka)
Z Wikipedii
Skutek uboczny lub efekt uboczny – w programowaniu dowolny efekt wyrażenia, który zmienia stan programu. Pomimo nazwy zwykle jest to właśnie spodziewany efekt.
Np. wyrażenie 2 + 3 nie ma skutków ubocznych, wyrażenie a = 2 + 3 ma skutek uboczny na zmiennej a.
W językach niskopoziomowych jest dużo skutków ubocznych - w asemblerze istnieją wyłącznie skutki uboczne i nie ma żadnego innego mechanizmu wykonywania obliczeń.
W językach funkcyjnych dla odmiany skutków ubocznych jest bardzo mało - i tylko tam gdzie są rzeczywiście niezbędne - np. do operacji wejścia/wyjścia.
Skutki uboczne znacznie utrudniają przeprowadzenie wielu rodzajów optymalizacji kodu wynikowego.