
Alexander
11.05.2017
12:25:32
именно развитием идей и основной разработкой на данный момент занимаюсь только я. Marshall Clow - мэйнтейнер и у него всегда мало времени на это

Alex Фэils?︙
11.05.2017
12:25:50

Alexander
11.05.2017
12:25:50
У Маршалла и так работы в Open Source выше крыши

Google

Alexander
11.05.2017
12:26:31
но он мне помогает, если получается у него
всё таки у него опыта в раза полтора-два больше, чем мне лет

Nikolai
11.05.2017
12:26:54

Alexander
11.05.2017
12:27:13

Nikolai
11.05.2017
12:27:53

Alexander
11.05.2017
12:28:01
@antoshkka твой PR с constexpr упорно игнорится

Antony
11.05.2017
12:28:49

Alexander
11.05.2017
12:29:40
Если у кого-то есть дельные предложения, как можно расширить Boost.Algorithm - пишите сюда и в ЛС дублируйте. Обсудим, и если идея годная, то я постараюсь добавить
жаль :(
я стараюсь достучаться до Маршалла, но об этом он упорно не хочет говорить?

Square
11.05.2017
12:30:59
Или суффиксные, как они там правильно:)

Antony
11.05.2017
12:31:20

Google

Square
11.05.2017
12:31:25
Короче для паттерн матчинга

Alexander
11.05.2017
12:31:25

Antony
11.05.2017
12:32:16
рандомно перемешать с учётом веса

Square
11.05.2017
12:32:25

Alexander
11.05.2017
12:32:47

Square
11.05.2017
12:32:49

Alexander
11.05.2017
12:33:02
или я неправильно понял?

Simon
11.05.2017
12:33:21
о, было бы топ PATRICIA запилить

Square
11.05.2017
12:33:54

Simon
11.05.2017
12:34:01
правда это специфично для типов у которых можно взять разряд

Alexander
11.05.2017
12:34:14

Simon
11.05.2017
12:34:53
это trie + radix tree грубо говоря
у тебя в узле хранится ключ, сравнение происходит взятием j-го разряда и сравнением с таким же по порядку образца

Alexander
11.05.2017
12:35:44
лол, прикольная идея

Square
11.05.2017
12:35:46

Alexander
11.05.2017
12:36:02

Google

Simon
11.05.2017
12:36:07
в итоге оче круто для длинных строк
её в ллвм юзают для ип-масок

Alexander
11.05.2017
12:36:34

Nikolai
11.05.2017
12:36:35

Alexander
11.05.2017
12:36:54

Simon
11.05.2017
12:37:20

Aleksei
11.05.2017
12:37:24

Nikolai
11.05.2017
12:37:41

Berkus
11.05.2017
12:37:47

Simon
11.05.2017
12:37:52
и при этом можно легко реализовать поиск по префиксу совпадающему из-за сравнения(возращать ключ с наиболее совпадающим префиксом)

Alexander
11.05.2017
12:38:28

Simon
11.05.2017
12:38:55
ну да, у меня есть нешаблонная гвонокодистая реализация

Alexander
11.05.2017
12:38:56
а потом бери и обобщи свою структуру, сделай её кастомизируемой по максимуму. И всё, тут начинается веселье

Simon
11.05.2017
12:39:39
и оан быстрее мэпы со стрингами все равно

Nikolai
11.05.2017
12:41:13

Alexander
11.05.2017
12:41:41
и оан быстрее мэпы со стрингами все равно
Если ты напишешь STL-совместимую мапу на основе соответствующего STL-стайл Patricia tree, докажешь, что оно реально намного эффективнее и не только в случае стрингов, то это одно (вариант, после которого начинается серьёзная работа по продвижению). До этого момента это мысли :) Я верю тебе и понимаю, что на стрингах оно будет рвать. Но этого мало

Berkus
11.05.2017
12:42:17

Alexander
11.05.2017
12:43:06
@Mrsameman Если ты готов взяться за это, это будет круто

Nikolai
11.05.2017
12:43:12

Google

Simon
11.05.2017
12:43:18
она вообще подразумевает, что работа происходит с типом данных у которых можно взять разряд, т.е. уже усложняет темплейт

Alexander
11.05.2017
12:43:22
Я говорю открыто - ни у меня, ни у Маршалла нет на это времени

Simon
11.05.2017
12:43:35
я попробую просто сделать темплейт версию для начала...

Alexander
11.05.2017
12:43:42
исходники в Интернете найдёшь

Simon
11.05.2017
12:44:32
и сделать такой же интерфейс и впихуть туда несчастную структуру?

Alexander
11.05.2017
12:44:47

Admin
ERROR: S client not available

Alexander
11.05.2017
12:45:06
Вон тебе @antoshkka даже может поможет.
Он там вроде как ментором был

Antony
11.05.2017
12:46:09
Просто посмотри на Boost.Trie
Если будут желающие доработать проект, то могу помочь советом с Boost.Trie
Там есть несколько сложных вещей, которые необходимо сделать, чтобы производительность была на пару порядков выше

Alexander
11.05.2017
12:47:29
Хочу сразу предупредить, что это весело - Копаться в Boost.Trie (нет)

Simon
11.05.2017
12:49:08
копаться в сорсах темплейт библиотек веселое дело само по себе

Antony
11.05.2017
12:49:32
там надо сдлеать очень хитрое низкоуровневое адище - добавить новый тип нодов - листья. Эти ноды должны хранить необщую часть дерева одним куском а не в виде односвязного списка. За счёт этого увеличится локальность данных и уменьшится количество аллокаций

Simon
11.05.2017
12:50:24
а, типа сжать листья?

Alexander
11.05.2017
12:50:36

Simon
11.05.2017
12:50:46
этим поцаны придумавшие трай задумались и сжали просто значения
*патрицию
узлы то есть....

Google

Alexander
11.05.2017
12:51:52

Simon
11.05.2017
12:52:31
Ой
вот такие магии с числами не есть хорошо
но это очень оптимизированное взятие бита
в строке

Ivan
11.05.2017
12:57:12
index - это ... ?

Simon
11.05.2017
12:57:33
ой, хедере забыл не вырезать
index - индекса бита который хотим взять

Ivan
11.05.2017
12:59:03
а, ну там тогда byteNum и bitNum как будто перепутаны

Antony
11.05.2017
12:59:25
Кстати, а никто не исследовал, почему std::mutex и std::timed_mutex не реализованы вот так: https://patchwork.freedesktop.org/patch/41241/
Вроде бы ничего не мешает, а автор обещает 10% прирост производительности?

Simon
11.05.2017
13:08:18

Alexander
11.05.2017
13:23:01

Antony
11.05.2017
13:27:15
Всё верно, идея в том, чтобы оставить самый минимум и позволить инлайниться. Меня 10% прироста производительности завораживают, ничего не могу с собой поделать...

melancholiac
11.05.2017
13:28:21
есть чат по си?

Grigor
11.05.2017
13:30:29
здесь все вместе
но большинство сиплюсплюсники

Andrey
11.05.2017
13:33:50

Aidar
11.05.2017
13:40:12
Странно ведь это про.схх