
Misha
01.11.2016
11:25:02
jane street?

Alexander
01.11.2016
11:25:06
+
lf

Misha
01.11.2016
11:25:19
adept наверное

Google

Alexander
01.11.2016
11:29:03
точно
я помнил, что на "a*" но это человек их тех времен которые я почти не застал

Kit
01.11.2016
11:45:17
а для type можено писать instance ?
мне нужно определить сумму двух триплетов, но не хочется отдельно писать функцию plus

Alexander
01.11.2016
11:58:11
разумным способом нельзя
неразумным можно написать инстанс - он скажет какое расширение включить
но это будет скорее неработать, чем работать

Kit
01.11.2016
11:59:35
мда ... как всегда спасает (+++) ?

Alexander
01.11.2016
12:00:51
ну можно для (,,,) написать
или newtype
все через линзы

eugene
01.11.2016
13:08:52

Anton
01.11.2016
14:07:18
Кто знает структуру данных с быстрой вставкой в середину

Google

Vladimir
01.11.2016
14:25:35
LinkedList?

Anton
01.11.2016
14:45:31
ну это же вставка за O(n)
и как мне его закодить в хаскеле? на двух стеках?

Alexander
01.11.2016
14:59:59
IntMap
Ну и массивы у окасаки
Мутабельный настоящий двусвязный список на чистых структурах не сделать
Мутабельный в смысле вообще на его основе нельзя добавить убрать что
А так можно через комонатки

Vladimir
01.11.2016
15:51:26
А я в STM что-то такое видел

Alexander
01.11.2016
16:16:56
Ну stm это мутабельные структуры

Vladimir
01.11.2016
16:18:48
https://hackage.haskell.org/package/stm-linkedlist-0.1.0.0/docs/Data-STM-LinkedList.html
Не подходит?

Sergey
01.11.2016
16:22:55
Ну вот, простейшая вещь, что делается в нормальных языках за одну строку приводит или к бойлерплейту с потерей алгоритмической сложности, либо к необходимостью обмазываться монадками. А чуть ещё если что понадобиться, так трансформерами.

Vladimir
01.11.2016
16:23:24
Что вы доказать-то пытаетесь? И зачем?

eugene
01.11.2016
16:26:10

Paul
01.11.2016
16:26:13
Ну как же. "сложнаа".
:)
По сути на хаскеле пишут ради вызова, не практичности ради

Kit
01.11.2016
17:19:56

Alexander
01.11.2016
19:26:06
что такое "обмазываться моданками" и почему это плохо
блин это как прийти с сишнакам и говорить. ААААА у вас 2 стейтмента подряд через точку с запятой!!!!

Google

Alexander
01.11.2016
19:28:32
ужас ужас
ещё и доступ R/W переменных
это не скейлится
код с разных ядер может прочитать разное!!!!
ааааа!!!!!
вы вообще is parallel programming hard and what can we do about it? читали?!!!!
это что за low level язык в котором все эти проблемы всплывают!!!!
я что должен в каждом шаге думать о представлении всего в памяти?!!!?!?!?!

Sergey
01.11.2016
19:30:34
> блин это как прийти с сишнакам и говорить.
Какие влажные мечты

Alexander
01.11.2016
19:30:58
можно более по русски

Alex
01.11.2016
19:31:00

Alexander
01.11.2016
19:31:12
у меня тут пара отделов сишников под боком

Vladislav
01.11.2016
19:31:23

Quet
01.11.2016
19:31:32

Alexander
01.11.2016
19:31:35
ну нормальные же вопросы?
но и нужны стеки не так и часто
хотя смотря какой код пишешь
если про всякий low-level, и прощее про что вопросы, то tf там не будет почти никогда
максимум какой MaybeT IO/ ReaderT IO

Quet
01.11.2016
19:32:42

Google

Sergey
01.11.2016
19:32:43
Не, мне нравится мышление комьюнити: Монады - это грязь, их не надо использовать. И тут же обмазываться ими по самые уши.

Quet
01.11.2016
19:33:08
как их таскать с собой по коду
если не трансформером

Alexander
01.11.2016
19:33:37
давай ты будешь полностью выражать мысли, и тогда хотя бы можно будет их пояснить

Alex
01.11.2016
19:34:17

Alexander
01.11.2016
19:34:21
а Reader это ->

Quet
01.11.2016
19:34:54
таскать логгер -- чтобы не создавать новый каждый раз например

Admin
ERROR: S client not available

Alexander
01.11.2016
19:35:15
да ладно монады не нужны, все что можно сделать монадами можно добиться аккуратностью и прилежанием (ц)
ну я только в fast-logger такой видел, что таскать надоб

Anatolii
01.11.2016
19:35:48
Я когда увидел стм в хаскеле и понял что там IO нельзя внутри сделать - я вот только тогда понял что в других языках хер ты такое сделаешь и насколько прекрасен хаскель

Sergey
01.11.2016
19:36:03
> не надо вестись на троллинг, это контрпродуктивно
Пользоваться Хаскелем контрпродуктивно. А на фоне этого - это уже мелочи

Alexander
01.11.2016
19:36:27

Quet
01.11.2016
19:36:29
в случае веба таскать с собой request приходится, еще всякие коннекты к бд

Alexander
01.11.2016
19:36:40
можно
ну это опять же ReaderT IO про который я гворил

Anatolii
01.11.2016
19:36:57
Мне кажется что трансформеры - дело привычки

Quet
01.11.2016
19:37:16

Google

Alexander
01.11.2016
19:37:31
tf?

Quet
01.11.2016
19:37:44
захотел в быстром коде ИНОГДА что-то в лог написать
притащил трансформер с логом
стало в неск раз медленнее

Alexander
01.11.2016
19:37:44
не в последних версиях не поленились inline сделать
так что теперь там должно почти все ухдить

Quet
01.11.2016
19:38:05
за последние версии не скажу, полгода назад где-т проблема была такая

Alexander
01.11.2016
19:38:38
там главное чтобы инлайнилось нормально, раньше криво было

Anatolii
01.11.2016
19:38:43
Я думаю что пока у тебя в приложении база есть - ты не заметишь оверлоада трансформеров

Alexander
01.11.2016
19:38:50
ну и важно что в BaseMonad

Quet
01.11.2016
19:39:14

Kit
01.11.2016
19:39:24
кто нибудь здесь Repa юзал?

Alexander
01.11.2016
19:39:25
ну если WriterT для лога притащить
то может быть весело
/me давно и неправда

Quet
01.11.2016
19:39:46
ну не, writerT я вообще не знаю что
чужими для хищников писано

Alexander
01.11.2016
19:40:00
у меня сложилось впечатление что на нём хорошо код писать могут только авторы
я на нём canon matrix multiplication пытался сам сделать в итоге зафейлил
т.е. сделал но оно тормозило
пока не взял вариант от авторов, который *почему-то* работал нормально

Kit
01.11.2016
19:40:57

Alexander
01.11.2016
19:41:01
вам

Alex
01.11.2016
19:41:06