Здравствуйте, AlexRK, Вы писали:
ARK>Здравствуйте, samius, Вы писали:
ARK>>>"Может принимать" и "всегда принимает/возвращает" — разные вещи. Если просто "может" — значит, эта функция ортогональна IO и грязной не является. А вот когда не МОЖЕТ, а ДОЛЖЕН — это уже другое дело. S>>Это юлеж. Постом назад альтернатив и ортогональностей не было, был единственно разумный подход!
ARK>Так твоя функция не принимает IO. IO нет в сигнатуре. А под "принимать IO" речь шла именно о сигнатуре ("Функция является грязной, если она принимает IO среди своих аргументов").
Функция id принимает все, что угодно, в том числе IO. Т.е. на ответ, принимает ли она IO, можно смело кивать.
S>>Ну а почему неотделим-то? S>>Т.е. все, кто кэширует IO, делают это лишь из-за богатого воображения?
ARK>Можешь продемонстрировать это?
Демонстрировал последним примером.
S>>С этим я не согласен. Тут уже находились любители измерять грязь по машинному коду. Ты предлагаешь измерять ее по вычислителю. Этого нет смысла, вычислитель может залить все грязью, даже не видя исходник функции. Какой смысл в таком критерии?
ARK>Смысл в этом критерии такой: он позволяет отделить зерна от плевел. Понять, где проходит граница чистоты.
В твоем критерии не понять, где проходит граница, т.к. можно сделать чистым и грязным даже отсутствие функции. Т.е. это не зависит от наличия функции. Остается понять, причем тут вообще функция и ее чистота?
S>>Видишь лист бумаги? Думаешь, он белый? А я возьму красный фильтр и докажу что он красный. Именно это ты предлагаешь с фальсификацией окружения. Смысла в этом 0.
ARK>И ты совершенно прав. Белый, красный, чистый, грязный — это неформальные ощущения. Квалиа, как любит говорить один местный гражданин. А формально другое — длина волны, частота излучения и т.п. И даже там на самом низком уровне приходится прибегать к аксиоматике — потому что в любом случае ты упираешься в базовые понятия, которые не выразимы ни через что.
ARK>Однако я вижу, что тебе не нравятся формальные рассуждения, тебе ближе варианты со "здравым смыслом".
Не вижу смысла уделять время формальным рассуждениям за гранью смысла. Если тебе нравится рассуждать о такой чистоте, когда любая функция может быть и чиста и грязна одновременно, включая тождественную, то и оставлю тебя с этими рассуждениями.