HUGS 98: различия между версиями

2 байта добавлено ,  4 года назад
м (→‎Параметры ИС HUGS 98: пардон, накладочка вышла)
=== Чистота (отсутствие побочных эффектов) ===
 
В императивных языках функция в процессе своего выполнения может читать и модифицировать значения глобальных переменных и осуществлять операции ввода/вывода. Поэтому, если вызвать одну и ту же функцию дважды с одним и тем же аргументом, может случиться так, что в качестве результата вычислятсявычисляться два различных значения. Такая функция называется функцией с побочными эффектами.
 
Описывать функции без побочных эффектов позволяет, практически, любой язык. Однако некоторые языки поощряют или даже требуют от функции побочных эффектов. Например, во многих объектно-ориентированных языках в функцию-член класса передаётся скрытый параметр (чаще он называется <code>this</code> или <code>self</code>), который эта функция неявно модифицирует.
Анонимный участник