Size: a a a

2020 May 14

AV

Alexander Vershilov in fprog_spb
Там было бы весело и смешно
источник

AV

Alexander Vershilov in fprog_spb
надо было ещё правда камеру на черновики, где я пытался схемы того, что должно происходить нарисовать
источник

AV

Alexander Vershilov in fprog_spb
Вот там было весело и классы типов и хитрые типы, и проблемы с подходами в компиляторе и как их обойти можно было
источник

AV

Alexander Vershilov in fprog_spb
Но к сожалению сейчас всё работает и показывать результат не так интересно
источник

AV

Alexander Vershilov in fprog_spb
Я ещё в какой-то момент буду декодеры делать, но можно было бы застримить, но я не знаю, когда я буду это делать
источник

АХ

Алексей Худяков... in fprog_spb
Yan Shkurinskiy
Ко-холивар
Холипис
источник

A

Alex in fprog_spb
Denis Shevchenko
А я и не говорил, что это всегда легко понять. Но главное, что это всегда МОЖНО понять. :-)
fun foo(arg: MyType) сразу все "понятно" стало что хочет функция )) ага
тут имхо больше зависит от стиля
источник

DS

Denis Shevchenko in fprog_spb
Это не Хаскель
источник

DS

Denis Shevchenko in fprog_spb
Впрочем, вспоминается старый мем.
источник

DS

Denis Shevchenko in fprog_spb
f :: String -> String -> String -> String
источник

DS

Denis Shevchenko in fprog_spb
types are a lie!
источник

DS

Denis Shevchenko in fprog_spb
Если пользоваться типами только на таком уровне - тогда да, пользы от них маловато
источник

JS

Jerzy Syrowiecki in fprog_spb
Denis Shevchenko
Это не Хаскель
да этот чат весь не про Хаскель
источник

DS

Denis Shevchenko in fprog_spb
Да ну? А я то уж было подумал... Что... Вот блин, а!
источник

DS

Denis Shevchenko in fprog_spb
😂
источник

DS

Denis Shevchenko in fprog_spb
parseURL :: Text -> Maybe URL

Даже если я не видел внутренний код этой функции, я точно знаю, что:

1. Она принимает одно текстовое значение.
2. Она возвращает либо URL, либо ничего.
3. Она не лезет во внешний мир.

Если же я вижу вот это:

parseURL :: Text -> Either ParseError URL

то уже знаю, что она возвращает либо URL, либо информацию об ошибке (если таковая случилась).
источник

n

neFormal in fprog_spb
Alexander Vershilov
Но к сожалению сейчас всё работает и показывать результат не так интересно
Я бы показал, но уже не хочется. 😆
источник

DS

Denis Shevchenko in fprog_spb
Разумеется, логические ошибки парсинга внутри этой функции могут присутствовать! Может быть, она парсит URL некорректно. Но базовый контракт (что у меня на входе, что у меня на выходе, что я не могу) эта функция соблюдает гарантированно.
источник

n

neFormal in fprog_spb
Denis Shevchenko
parseURL :: Text -> Maybe URL

Даже если я не видел внутренний код этой функции, я точно знаю, что:

1. Она принимает одно текстовое значение.
2. Она возвращает либо URL, либо ничего.
3. Она не лезет во внешний мир.

Если же я вижу вот это:

parseURL :: Text -> Either ParseError URL

то уже знаю, что она возвращает либо URL, либо информацию об ошибке (если таковая случилась).
Что функция делает? Где описание алгоритма?
источник

DS

Denis Shevchenko in fprog_spb
Ты читал мой комментарий полностью? Или хочешь просто поспорить?
источник