Подтвердить что ты не робот

Что такое функция, которая не принимает аргументов?

Существует ли термин, описывающий функцию, которая не принимает аргументов более кратко, чем "функция, которая не принимает аргументов"? (Точно так же, как, например, "функция более высокого порядка" означает "функция, которая принимает функции в качестве аргументов или возвращает функцию" )

Я, естественно, думаю о "пустоте", но я также думаю о побочных эффектах, когда вижу "пустоту". Ситуация, о которой я думаю, такова, что в этом обсуждении constantly:

Что представляет собой эта функциональная "схема" называется?

где вы можете создать закрытие, которое не принимает аргументов, не имеет побочных эффектов, но все же делает что-то интересное.

4b9b3361

Ответ 1

Нулевая функция, обычно: http://en.wikipedia.org/wiki/Arity

Независимо от того, имеет ли функция побочные эффекты, ортогонально, сколько аргументов она имеет, поэтому на языке, где никакая функция никогда не имеет побочных эффектов, вам не нужен более конкретный термин. В языках с побочными эффектами, я полагаю, вы назвали бы это "без побочных эффектов" или "чистой" нулевой функцией.

И затем с (например) memoization, функция может быть логически чистой, даже если вы знаете, что за кулисами она имеет побочные эффекты.

Ответ 3

A nullary или niladic.