@haskellru

Страница 228 из 1551
Kit
06.03.2017
17:07:18
В >>= нет
Хочешь сказать что выход за область определения тоже эффект?

Alexander
06.03.2017
17:08:15
Щас до дома дойду, мне холодно тут правильно мысль конструировать чтобы к словам не докапались

Тут эффект это частичное вычисление, а maybe это средство его capture

Т.е. да int int -> Maybe int без эффектов, т.к. эффект захвачен

Google
Alexander
06.03.2017
17:09:45
В наш вычислительный контекст

Мерлин
06.03.2017
17:10:10
Господа, я вас на понимаю Разве side effects - это не когда результат выполнения функции зависит не только от её аргументов?

? animufag ?
06.03.2017
17:11:32
Не совсем тебя понял. Конструктор Nothing в Maybe собственно и моделирует эту возможность/сайдэффект ошибки
Такие слова меня устраивают. Выражаясь через "могут представить", "моделируют", "имеет достаточную выразительную мощность" ты как бы показываешь что там автоматически не происходят какие-то эффекты. Выражаясь через "Nothing это сайд эффект потому что он не в норме" ты добавляешь какую-то магию

Alexander
06.03.2017
17:13:37
Ну да, это же дословно было сказано в переводе цитаты сегодня днем

? animufag ?
06.03.2017
17:14:10
ну только цитата наделена чуть большей магией

ещё раз её сюда приведу

> Effects are a classification of computations independent of the ex- plicit inputs and outputs of those computations. из Tate

Итак как это происходит

функция принимает инпут, парочку чисел

? animufag ?
06.03.2017
17:15:41
у функции может быть детерменированный результат (но это не обязательно, такого условия нет! но может быть и детерменированный)

1 + 1 = 2 (лол случайно 4 написал, могло сбить с толку)

Google
? animufag ?
06.03.2017
17:15:58
а теперь понеслась магия побочных эффектов

Alexander
06.03.2017
17:16:47
Если функция складывает 2 числа, то в чем ее сайд эффект? Нет смысла возвращать из нее Maybe Int

? animufag ?
06.03.2017
17:16:58
она в это время пока считает, вычисляет положение луны и её фазу, всё это перемножает на разные вектора и творит полный беспредел, который мы в общем не знаем

это моё понимание фразы "вычисление независимое от явных инпутов и оутпутов"

а функция с сайд эффектами, та где например нам не хватило оперативы для вычисление и такое явление как нехватка оперативы выражено через Nothing

ну вы поняли про какой head я имел ввиду

Alexander
06.03.2017
17:28:33
Вы это осторожнее с Nothing, т.к. мейби это решение для перевода частичной функции в полную, т.е. захват сайд эффекта функции

Мерлин
06.03.2017
17:38:01
это моё понимание фразы "вычисление независимое от явных инпутов и оутпутов"
На самом деле можно сказать так: чистая функция - это сюръективное отображение множества аргументов на множество возвращаемых значенией.

и фсё

? animufag ?
06.03.2017
17:39:33
сюръективное что-то такое было. взаимооднозначное?

Мерлин
06.03.2017
17:39:43
Нет

Ilya
06.03.2017
17:39:46
сюръективное - это когда покрывается всё множество значений

Мерлин
06.03.2017
17:39:46
Щас поищу

Ilya
06.03.2017
17:39:51
и это тут не в кассу

Ilya
06.03.2017
17:40:15
напримерь модуль не сюръективен из R в R

но разве это не чистая функция?

Мерлин
06.03.2017
17:40:30
Чёрт

илья прав

Google
? animufag ?
06.03.2017
17:41:36
а по картинке модуль вроде подходит

Мерлин
06.03.2017
17:42:24
Тогда можно сказать так: любому набору аргументов соответсвует одно возвращаемое значение (но не наоборот, то есть это не однозначное отображение)

? animufag ?
06.03.2017
17:43:02
print 1 » pure $ 1 чистая?

Мерлин
06.03.2017
17:43:43
а по картинке модуль вроде подходит
Неа Если функция определена как R -> R+ (то есть рациональные числа в положительные рациональные числа), тогда да, сюръективна

Евгений
06.03.2017
17:44:14
Всмысле, a -> Maybe b превращает частичную функцию a -> в нормальную. Частичная значит "не для всех а определено значение функции". Характерный пример -- любая частично-рекурсивная функция, не являющаяся тотальной

? animufag ?
06.03.2017
17:44:19
а понял

Ilya
06.03.2017
17:44:23
это просто отображение:)

отображение как раз и сопостовляет одному аргументу - всегда одно и то же значение

по своему определению

и биективность, сюръективность, инъективность - это уже доп. свойства

? animufag ?
06.03.2017
17:45:24
это просто отображение:)
кстати так и не понял на курсе матана, чем отображение обобщает термин "функция"

Ilya
06.03.2017
17:45:31
т.е. чистая фукнция - это просто отображение, или просто функция в мат. смысле

Мерлин
06.03.2017
17:45:36
блин надо всё это перечитывать

? animufag ?
06.03.2017
17:45:44
то есть что ещё есть в отображении

Ilya
06.03.2017
17:45:58
кстати так и не понял на курсе матана, чем отображение обобщает термин "функция"
да одно и то же, просто применяется в разных контекстах

? animufag ?
06.03.2017
17:46:04
ок

стало спокойней жить

Евгений
06.03.2017
17:47:34
Например рассотрим f: R -> R, но f=1/x. Тогда в 0 f не определена, т. е правильно f : R -> Maybe R. И f(0) = Nothing

Мерлин
06.03.2017
17:48:13
And so what?

Google
Мерлин
06.03.2017
17:48:24
Я немного утерял ход мысли

Ilya
06.03.2017
17:48:55
"f: R -> R, f(x) = 1/x" абсолютно корректная запись с точки зрения математики, если что

Евгений
06.03.2017
17:49:30
? animufag ?
06.03.2017
17:50:27
Вы это осторожнее с Nothing, т.к. мейби это решение для перевода частичной функции в полную, т.е. захват сайд эффекта функции

Всмысле, a -> Maybe b превращает частичную функцию a -> в нормальную. Частичная значит "не для всех а определено значение функции". Характерный пример -- любая частично-рекурсивная функция, не являющаяся тотальной

Например рассотрим f: R -> R, но f=1/x. Тогда в 0 f не определена, т. е правильно f : R -> Maybe R. И f(0) = Nothing

так так так

значит частичность это сайд-эффект?

Евгений
06.03.2017
17:51:22
"f: R -> R, f(x) = 1/x" абсолютно корректная запись с точки зрения математики, если что
Ну разве что со стороны школьной математики. Со стороны даже обычной университетской правильно f: (-inf, 0) union (0, +inf) -> R Ну или f: R -> R union {inf}

? animufag ?
06.03.2017
17:51:45
а наверное ещё и бесконечная рекурсия туда же (ну это уж совсем сайд эффект, прям чувствуется)

Ilya
06.03.2017
17:52:54
думаю, ты слышал про область определения? функций, операторов

мы можем написать f : R -> R, но D(f) = R \ {0}

и это абсолютно корректно

? animufag ?
06.03.2017
17:53:58
ну это чушь, конечно же
Поосторожнее с такими словами) у меня с подобной фразы уже второй день как горит

Ilya
06.03.2017
17:54:14
с точки зрения нотации любого учебника матана

рудин, колмогоров

etc

Мерлин
06.03.2017
17:54:49
Я не понимаю, как вообще область определения функции связана с побочными эффектами

Google
Ilya
06.03.2017
17:55:22
Поосторожнее с такими словами) у меня с подобной фразы уже второй день как горит
ты очень чувствительный человек, если у тебя горит даже когда её пишут не тебе:)

? animufag ?
06.03.2017
17:55:46
не, тогда писали мне

Ilya
06.03.2017
17:55:54
а, ок

я даже могу объяснить, нафейхоа это надо

разделять отображаемое множество и D(f)

Евгений
06.03.2017
17:58:48
думаю, ты слышал про область определения? функций, операторов
Функция X->Y это подмножество F множества 2^XxY, такое что: 1. для любого x:X существует y:Y, т.ч (x, y) in F 2. для любых (x, y1): F и (x, y2): F y1=y2

Так написано у Бурбаки => истина в конечной инстанции

Ilya
06.03.2017
18:04:10
Так написано у Бурбаки => истина в конечной инстанции
ну после таких формулировок что-то обсуждать уже не хочется:)

мы можем написать f : R -> R, но D(f) = R \ {0}
а обычный рабочий математик понимает такую запись вполне нормально. и понимает, зачем так писать.

Евгений
06.03.2017
18:07:23
ну после таких формулировок что-то обсуждать уже не хочется:)
А чего обсуждать? Общепринятые определения, выдвинутые великой школой математиков? Тем более, что после них в фаундейшонсках классической математики ничего не произошло вообще

Мерлин
06.03.2017
18:10:08
Например у нас есть функция, которая возвращает сумму случайного числа и аргумента Он может быть определена на всём множестве рациональных чисел, например. Но её результат зависит не только от аргумента. Или функция, вон та самая фунция 1/x Она определена не на всём множестве аргументов, но тем не менее результат её выполнения зависит только от аргумента, принадлежащего области области определения.

Да господи, вы о чём спорите

На двух соседних кафедрах нотации могут отличаться

А вы про школы задвигаете

три раза ха

Ilya
06.03.2017
18:10:52


ересь это, или что

срочно ли надо сжечь эту книгу/сайт?

Евгений
06.03.2017
18:12:04
а обычный рабочий математик понимает такую запись вполне нормально. и понимает, зачем так писать.
Как говорил нам в университете товарищ Вавилов чтобы правильно пользоваться некорректными формулировками необходимо сначала освоить корректные

Страница 228 из 1551