@ProCxx

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

Alexander
11.05.2017
12:25:50
Вот поэтому она и не закончится - чувство прекрасного у каждого извращено по своему)
поэтому и приходится обсуждать интерфейсы с кучей других разрабов

У Маршалла и так работы в Open Source выше крыши

Google
Alexander
11.05.2017
12:26:31
но он мне помогает, если получается у него

всё таки у него опыта в раза полтора-два больше, чем мне лет

Nikolai
11.05.2017
12:26:54
поэтому и приходится обсуждать интерфейсы с кучей других разрабов
вот я так подумал, что единственное что остается - пилить ИИ, который будет модифицировать интерфейсы под конечного пользователя, но это ахинея получается

Nikolai
11.05.2017
12:27:53
дай сначала STL сделать нормальным)))) а ты уже с ИИ лезешь
ну а что?))) Мои внуки будут жить а STL не будет нормальным))) Я уже смирился с этим

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

Antony
11.05.2017
12:28:49
они же вроде уже развернулись лицом к С++, так чего же всё так грустно? у них там армия программистов же есть, могут делать это
У них были проблемы в архитектуре компилятора. Изначально было сделано не совсем по правилам (см двухфазный поиск в msvc), а чтобы это починить и сделать совершенно верно требуется очень много времени. Без этого - нет возможности делать некоторые новые С++ вещи. Сейчас вроде почти дочинили, НО constexpr - самая сложная часть C++11 для имплементации. так что будут еще мучаться какое-то время с ним

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

жаль :(
я стараюсь достучаться до Маршалла, но об этом он упорно не хочет говорить?

Antony
11.05.2017
12:31:20
Google
Square
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
И чтоб в качетстве паттерна - маску можно было или регекс простенький :)
ты и так можешь с помощью Boost.Algorithm заниматься поиском с помощью regex

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
о, было бы топ PATRICIA запилить
это разновидность бора какая-то?

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
это trie + radix tree грубо говоря
но этого не будет пока что)))

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
по перфомансу лучше сжатого бора?
поиск за O(klog(N)), k - количество разрядов

Nikolai
11.05.2017
12:37:41
там ничего сложного. ПРосто нужно один раз сломать мозг и всё становится на свои места
Я один раз сломал мозг, когда осознал как скриптовые языки работают) Я не хочу)

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

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

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

ну да, у меня есть нешаблонная гвонокодистая реализация
такого добра много (если что, спрошу у тебя реализацию). Для интереса посмотрите на Boost.Trie

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

Nikolai
11.05.2017
12:41:13
Потому что могут. То есть не могут. Сорцы vc то еще удовольствие
Раз ты копался - компилятор студийный сильно отличается от того, что идет в составе win developer sdk?

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

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
я попробую просто сделать темплейт версию для начала...

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

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
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
а, ну там тогда byteNum и bitNum как будто перепутаны
лоло, похоже на магию которую я не помню, надо будет пересмотреть кодес и литературу перечитать

Alexander
11.05.2017
13:23:01
Кстати, а никто не исследовал, почему std::mutex и std::timed_mutex не реализованы вот так: https://patchwork.freedesktop.org/patch/41241/ Вроде бы ничего не мешает, а автор обещает 10% прирост производительности?
Так pthread мьютексы, да и вообще все так реализованы (cmpxchg в fast path или futex syscall). Вроде вся идея только в том, чтобы убрать вызов функции через указатель, и выкинуть все сложные кейсы (типа таймаута, рекурсии)

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
Странно ведь это про.схх

Страница 862 из 2477