
Meowfka
11.09.2018
06:12:13

Aleksey
11.09.2018
06:12:34
Servant стоит попробовать, конечно. Но scotty вполне норм, я считаю

Aleksey
11.09.2018
06:12:44

Meowfka
11.09.2018
06:12:46
Сяп

Google

Aleksey
11.09.2018
06:13:40
Да просто Servant, это "красиво и типизированно". А Scotty "слишком простой" для некоторых :)
(мне - нравится, хоть я и в Servant умею тоже)

Aleksey
11.09.2018
06:14:51
ну тогда уж проще сразу раби
или петухон
если слишком типизированно

Meowfka
11.09.2018
06:19:03
Если миллион причин не юзать их

Alexander
11.09.2018
06:20:15
например?

Aleksey
11.09.2018
06:20:30

Meowfka
11.09.2018
06:20:56
например?
Как минимум их(ние) интерпретаторы, даже про питон вечно ходят мемасы с улиткой
Не говоря уже про Ruby

Alexander
11.09.2018
06:21:18
нагрузка основная все равно на СУБД идет

Meowfka
11.09.2018
06:22:13
)))))

Google

Meowfka
11.09.2018
06:22:18
Я сервак для Unity пилю
Вряд ли я буду паки с моделями в бд пихать

Aleksey
11.09.2018
06:22:50
Питон - точно не самое медленное звено в проектах из той ниши, где нужно что-то вроде Scotty :)

Alexander
11.09.2018
06:23:14

Aleksey
11.09.2018
06:23:38
Любая БД хочеть стать ОЗУ :)

Alexander
11.09.2018
06:23:56
любая ОЗУ хочет вырузится в своп

Aleksey
11.09.2018
06:24:07
Круг замкнулся

Alexander
11.09.2018
06:25:28
кстати, если я не ошибаюсь в POSIX ОЗУ является файловой системой

Meowfka
11.09.2018
06:27:38
Разве?
Shindows же тоже довольно таки POSIX совместимая

Aleksey
11.09.2018
06:31:20
Не что чтобы сильно :)
Местами только

Евгений
11.09.2018
07:42:14

Leonid
11.09.2018
07:46:14

Евгений
11.09.2018
07:47:42
(s)brk помечен как легаси с POSIX.1-2001

Alexander
11.09.2018
09:00:42

Iva
11.09.2018
09:01:47
Зачем свободно работать с памятью если есть умные указатели + gc

Nick
11.09.2018
09:02:48
в хаскеле есть умные указатели?

Iva
11.09.2018
09:03:14
я хз что в хаскеле есть, я его не знаю

Alexander
11.09.2018
09:03:29
ForeignPtr

Google

Iva
11.09.2018
09:03:30
вроде как в нём нет нужды ни в то ни в другом

Alexander
11.09.2018
09:03:46
ну если умный указатель это указатель + refcounter
нужно если FFI есть

Iva
11.09.2018
09:04:16
Ну да, эт он.

Alexander
11.09.2018
09:04:59
вообще для FFI в Haskell есть много интересных Pointer-ов
от Addr# и Ptr, до StablePt, ForeignPtr, StaticPtr (не для FFI)

Iva
11.09.2018
09:08:33
Но гц наверное нет

Nick
11.09.2018
09:10:39
в смысле нет гц?

Iva
11.09.2018
09:11:34
Где то писали для чистых функций он не нужен, там и так всё ясно

Nick
11.09.2018
09:12:22
что-то новое

Anton
11.09.2018
09:16:07
Делал даже обёртку для плюсовых smart pointers на основе ForeignPtr с финализатором

Iva
11.09.2018
09:22:53
Плюсы ещё та гадость
Трясинища

Alexander
11.09.2018
09:24:19
глупости какие-то писали
GC для нормального FP нужен
для UFP хотя бы

A64m
11.09.2018
09:29:50
даже для ферст ордер чистого языка нужен, потому что куча аллокаций из которых небольшое число объектов долгоживущие из-за персистентных структур всяких

Алексей
11.09.2018
09:30:39

A64m
11.09.2018
09:31:37
если много аллокаций, и все быстро помирает не обязывают, можно аренами какими-нибудь обойтись, именно когда много аллокаций и небольшое число выживающих

Алексей
11.09.2018
09:32:18
количество выживжих/погибших тоже не обязывает

Google

Iva
11.09.2018
09:32:19
там аргумент был из разряда что мы не можем сделать циклическую структуру не нарушая immutability, и по этому можно обйтись счётчиком ссылок

A64m
11.09.2018
09:32:46

Alexander
11.09.2018
09:32:51
repeat x = x: repeat x
пожалуйста ^
циклическая структура

A64m
11.09.2018
09:33:09
так можно сказать что и UFP не обязывает, просто никто ничего не придумал другого еще

Алексей
11.09.2018
09:33:24

Iva
11.09.2018
09:33:45
Мда, поменьше всякой фигни надо читать

Алексей
11.09.2018
09:35:47
а вот в случае энергичного языка надо подумать

Alexander
11.09.2018
09:35:58
сделать ленивость через \() -> a
она не то, чтобы настоящая будет
и тормозить, но это мелочи

A64m
11.09.2018
09:37:20

Alexander
11.09.2018
09:37:45
но даже если и циклических нет, то что без GC то?

Iva
11.09.2018
09:37:47
расшифруйте

Alexander
11.09.2018
09:37:56
арены/регионы/рефкаунтеры?
первые и вторые особо никто делать не умеет

Алексей
11.09.2018
09:38:10

Iva
11.09.2018
09:38:15
да

Alexander
11.09.2018
09:38:24
но счетчик ссылок это хуже чем GC?

Google

Евгений
11.09.2018
09:38:31
Настоящую ленивость можно сварганить, если поиграться с call/cc

Alexander
11.09.2018
09:38:34
в очень большом числе задач

Евгений
11.09.2018
09:38:52
Счётчик ссылок это очень примитивный и тупой GC

Alexander
11.09.2018
09:39:00
у вас сложность зависима от числа выделенных элементов

Алексей
11.09.2018
09:39:05

Alexander
11.09.2018
09:39:06
а не от числа выживших
это работает только для языка, в котором нужно мало выделять и мутировать
причем не *можно*, а *нужно*

Алексей
11.09.2018
09:39:56
хммм

Alexander
11.09.2018
09:40:04
при этом без прыжков с аллокатором даже выделение дороже
поэтому у нас появляются jemalloc, например.
ещё вопрос какой у нас доступ из тредов

Meowfka
11.09.2018
09:40:47
Хаскель в основном для бэка же юзают?

Alexander
11.09.2018
09:40:51
если у нас данные не thread-local (for some definition) то нужны синхронизации

Алексей
11.09.2018
09:40:54
не, если всё таки говорить теоретически

Евгений
11.09.2018
09:41:03

Iva
11.09.2018
09:41:12

Alexander
11.09.2018
09:41:14
да что теоритически, возьмите какой-нить prefix tree на раст и на haskell
и удивитесь тому, что разница в скорости выполнения не та, которую вы ожидаете