
Sublime Bot
05.02.2018
09:22:19
OK! Ты теперь участвуешь в игре "Пидор Дня"

andretshurotshka?❄️кде
05.02.2018
13:05:27
/pidor@SublimeBot

Sublime Bot
05.02.2018
13:05:27
Согласно моей информации, по результатам сегодняшнего розыгрыша пидор дня - kelin2025!

Taras
05.02.2018
13:06:18
что опять kelin?

Google

Dmitry
05.02.2018
13:06:53
Не, он раз в сутки выбирает
Это можно просто посмотреть результат

Taras
05.02.2018
13:07:08
а, ок

Kelin
05.02.2018
15:43:54
Бля, я уж обрадовался

Denis
05.02.2018
15:44:20
двойной пидор?

Kelin
05.02.2018
15:44:45
Да

andretshurotshka?❄️кде
05.02.2018
20:56:54
/pidor@SublimeBot

Sublime Bot
05.02.2018
20:56:55
Согласно моей информации, по результатам сегодняшнего розыгрыша пидор дня - kelin2025!

andretshurotshka?❄️кде
05.02.2018
20:57:19
307 мемберов
нам конец

illiatshurotshka❄️
05.02.2018
20:57:40
а сколько было

andretshurotshka?❄️кде
05.02.2018
20:57:42
308
@kana_sama спаси

Google

illiatshurotshka❄️
05.02.2018
20:57:58
да норм

andretshurotshka?❄️кде
05.02.2018
20:58:34
ето кто
привет

kana
05.02.2018
20:58:39
не важно
пусть будет 308-ым

Dmitry
05.02.2018
20:59:46
Парень твой?

kana
05.02.2018
21:00:18
опять ты куда-то меныя добавил
без моего ведома
блэт
почему у меня не спрашивается разрешение?
потому что можно добавлять без разрешения
очевидно
это старые сообщения
я когда конфы новые делаю, там нужно одного чела добавлять как минимум, всегда его беру, он, видно, не против

Dmitry
05.02.2018
21:01:13
Лол


kana
05.02.2018
21:04:07
у меня тут очередное объяснение монады через моноиды, может кому вдруг понравится
Моноид - тройка (M, f: M*M -> M, g: 1 -> M)
Категория эндофункторов - категория, где объекты - эндофункторы (то есть функторы, которые принимают объект X категории С и отдают объект Y той же категории C (в этой категории эндофункторы всех категорий)). Тогда стрелка (морфизм) на этой категории - это преобразование функтора в другой функтор, это называется естественное преобразование и рисуется как ~>. Maybe ~> List, это то же самое, что и Maybe a -> List a - естественное преоабразвание мейби в список, пример такого преобразования:
f :: Maybe a -> List a
f (Just x) = [x]
f Nothing = []
Так же определим функтор Compose f g,
type Compose f g a = f (g a)
instance (Functor f, Functor g) =>
Functor (Compose f g) where
fmap f x = fmap (fmap f) x
x :: Compose Maybe List Int
x = Just [1]
fmap succ x == Just [2]
и функтор Identity, который ничего не делает
type Identity a = Identity
instance Functor Identity where
fmap f x = f x
x :: Identity Int
x = 1
fmap succ x == 2
Очевидно, что
Compose Identity f ==
== Compose f Identity ==
== f
, поэтому если Compose - операция, то Identity - нейтральный элемент, единица
Поэтому берем тройку
( M: * -> * -- конструктор типа,
-- принимает тип и отдает тип
-- Maybe принимает Int
-- и отдает Maybe Int
, join: Compose M M ~> M
, return: Identity ~> M
)
Compose M M ~> M ==
== Compose M M a -> M a ==
== M (M a) -> M a -- это тип join
Identity ~> M ==
== Identity a -> M a ==
== a -> M a -- эти тип return
Вот эта тройка - монада


andretshurotshka?❄️кде
05.02.2018
21:11:57
hello there
Моноид - тройка (M, f: M*M -> M, g: 1 -> M)
Категория эндофункторов - категория, где объекты - эндофункторы (то есть функторы, которые принимают объект X категории С и отдают объект Y той же категории C (в этой категории эндофункторы всех категорий)). Тогда стрелка (морфизм) на этой категории - это преобразование функтора в другой функтор, это называется естественное преобразование и рисуется как ~>. Maybe ~> List, это то же самое, что и Maybe a -> List a - естественное преоабразвание мейби в список, пример такого преобразования:
f :: Maybe a -> List a
f (Just x) = [x]
f Nothing = []
Так же определим функтор Compose f g,
type Compose f g a = f (g a)
instance (Functor f, Functor g) =>
Functor (Compose f g) where
fmap f x = fmap (fmap f) x
x :: Compose Maybe List Int
x = Just [1]
fmap succ x == Just [2]
и функтор Identity, который ничего не делает
type Identity a = Identity
instance Functor Identity where
fmap f x = f x
x :: Identity Int
x = 1
fmap succ x == 2
Очевидно, что
Compose Identity f ==
== Compose f Identity ==
== f
, поэтому если Compose - операция, то Identity - нейтральный элемент, единица
Поэтому берем тройку
( M: * -> * -- конструктор типа,
-- принимает тип и отдает тип
-- Maybe принимает Int
-- и отдает Maybe Int
, join: Compose M M ~> M
, return: Identity ~> M
)
Compose M M ~> M ==
== Compose M M a -> M a ==
== M (M a) -> M a -- это тип join
Identity ~> M ==
== Identity a -> M a ==
== a -> M a -- эти тип return
Вот эта тройка - монада
а че не в канал


kana
05.02.2018
21:12:36
хм, чет примитивно для канала, думаю

Google

kana
05.02.2018
21:12:41
да, закину
просто писать статьи про монады - своего рода зашквар
а в чат закинуть норм

? animufag ?
05.02.2018
21:14:09
ну да тип встаёшь в список статей о том что такое монада

Denis
05.02.2018
21:14:14
Compose - тензорное произведение, а это как раз бинарный оператор произведения для моноида в категории эндофункторов

? animufag ?
05.02.2018
21:14:20
там ещё классификация статей есть

andretshurotshka?❄️кде
05.02.2018
21:14:37
это буррито

Denis
05.02.2018
21:17:18
Монада похожа на моноид, но вместо того, чтобы иметь тип, у нас есть функтор. И выходит что монада это алгебра в категории эндофункторов
не важно какая у нас конструкция все алгебры сводятся к типу вида t^n → t
mappend -> t^2 -> t или (t, t) -> t
mempty -> t^0 -> t или () -> t
ну и так далее

andretshurotshka?❄️кде
05.02.2018
21:20:12
ДУАЛЬНОСТЬ
опять зига хз че пишет

Dmitry
05.02.2018
23:17:25
/pidor@SublimeBot

Sublime Bot
05.02.2018
23:17:26
Зачем вы меня разбудили...
Интересно...
Доступ получен. Аннулирование протокола.
Ага! Поздравляю! Сегодня ты пидор - @Dmitry_Kovbasa

Dmitry
05.02.2018
23:17:42
Блять

andretshurotshka?❄️кде
05.02.2018
23:17:45
Лол

Yung
05.02.2018
23:20:49
КАК ПИДОР

Google

Yung
05.02.2018
23:21:03
?

Denis
05.02.2018
23:21:29

Kelin
06.02.2018
08:32:06
А че за атомики
Рил

? animufag ?
06.02.2018
08:32:24
+
ааа это видимо атомарные операции лол)

Kelin
06.02.2018
08:34:46
Охуенно, и что это значит

? animufag ?
06.02.2018
08:34:54
ну тип на уровне процессора. неразделимая операция. другой тред короче не вмешается
ну тип просто не ожидаешь этого в джс встретить
ну там их нужно побольше и посложнее. типа compareAndSet
чтобы всякие локфри делать

illiatshurotshka❄️
06.02.2018
08:36:47

? animufag ?
06.02.2018
08:36:58
что

Kelin
06.02.2018
08:37:38
Охуенно, и что это даёт

illiatshurotshka❄️
06.02.2018
08:38:28
что
у тебя и обычное сложение идёт на уровень процессора

? animufag ?
06.02.2018
08:38:54
оооооооооооооооокей
ну тип я подумал что это новый термин
джээсовый
ну знаешь как слово нетив например
у разых программистов оно обозначает разное

Google

? animufag ?
06.02.2018
08:40:32
а тут хоп и оказывается это те же самые атомики которые реализуются процессором. ну и наверное ось этим тоже занимается

illiatshurotshka❄️
06.02.2018
08:41:03

? animufag ?
06.02.2018
08:41:05
Охуенно, и что это даёт
ну тип теперь видимо в браузерах несколько тредов можно делать. и когда ты этим займёшься тебе предстоит ебл с этим недетеменированным миром

illiatshurotshka❄️
06.02.2018
08:42:20
и вообще, на вики это все написано @kelin2025

Kelin
06.02.2018
08:42:24
Можете просто объяснить, в чем профит от этого, пожалуйста суукааа

? animufag ?
06.02.2018
08:42:57
и должен найтись герой который сделает всякие очереди, а для этого ему пригодятся вот эти атомарные штуки, чтобы заодно ещё сделать локфри и чтобы потом у всех было дохуя разных критериев выбора либы для работы с многопоточностью

Kelin
06.02.2018
08:43:04
О, прогрузилось

illiatshurotshka❄️
06.02.2018
08:43:04

Kelin
06.02.2018
08:43:31

illiatshurotshka❄️
06.02.2018
08:44:47
во многих системах атомики юзают для чеков насчет очистки мусора

? animufag ?
06.02.2018
08:45:52
ты про гц в многопоточной среде?

illiatshurotshka❄️
06.02.2018
08:46:39
не обязательно многопоточной

? animufag ?
06.02.2018
08:50:53
хм. ну мб ты сейчас про то что конкарент гц можно и для однопоточного языка запилить.
но так повспоминать в фиолетовом драконе говорилось read/write барьеры и это процессорные термины и я тогда не понял к чему это.

Kelin
06.02.2018
08:53:47

Дмитрий
06.02.2018
09:11:42
Атомики это не обязательно на лоу левеле, просто там они чаще всего требуются ну и структуры данных в жс так называются

Алексей
06.02.2018
09:12:50
не оч понимаю как атомики на процессоре сделать
мож кто знает?
(а точнее я сильно сомневаюсь что они на процессоре)

Дмитрий
06.02.2018
09:13:56
Они не на процессоре конечно же) Просто бинарные данные