En programado, funkcioesprimo havas kromefikon, se ĝi ŝanĝas ion krom la staton de siaj lokaj objektoj, t.e. havas ankoraŭ alian observeblan efikon krom la liveron de sia valoro (rezulto). Tia kromefiko povas konsisti en valorizo de neloka variablo, aŭ de statika variablo (eĉ se tiu havas lokan videblejon), plenumo de eneliga operacio.

Ĝenerale, se iu funkcio f havas kromefikon, tiam oni ne rajtas redukti du sinsekvajn vokojn de f kiaj

y := f(x); y := f(x);

al unu sola

y := f(x);

eĉ se la valoro de la argumento x restas senŝanĝa; oni do iam nomas tiajn funkciojn neredukteblaj (termino de PL/I).

Ekz‑e en la programo P el la arikolo «Malloka variablo» la stakomanipulaj subprogramoj surstakigu kaj elstakigu kromefike ŝanĝas la valoron de la neloka variablo pinto.

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.