@ProCxx

Страница 2055 из 2477
Alexander
15.05.2018
12:15:14
ну как бы в Стандарте довольно много вещей, которые нужны примерно никогдаэ

Chiveson
15.05.2018
12:16:26
они же во всех языках есть)

Max
15.05.2018
12:19:12
http://habrahabr.net/thread/1242

Google
Max
15.05.2018
12:19:15
вот чо нашел

инетерсно многое ли поменялось с тех пор

impl<'a> Map<&'a str, Value> for InfoDict { fn find<'x>(&'x self, key: &&str) -> Option<&'x Value> { self.map.find_equiv(key) } fn contains_key<'x>(&'x self, key: &&str) -> bool { self.find(key).is_some() } }

глаза мои вытекли

яснопонятно

Anatoly
15.05.2018
12:34:26
@MaxPlutonium используй теги <pre> или три ` до и после кода

Max
15.05.2018
12:34:37
щас попробую

Anatoly
15.05.2018
12:35:05
щас попробую
можешь отредактировать ранее опубликованное сообщение

Ilia
15.05.2018
14:06:24
Господа, а в C++ не завезли механизмов контроля времени жизни как в Rust?
Жаль, что мы не можем контролировать время... А то было бы очень просто изучать С++ за 21 день!

Alexander
15.05.2018
14:11:06
киньте этот комикс сюда

Anatoly
15.05.2018
14:11:08
Жаль, что мы не можем контролировать время... А то было бы очень просто изучать С++ за 21 день!
А фигли, никто же не уточняет на какой планете, го на Венеру и там у тебя 243 земных дня длится день.

Alexander
15.05.2018
14:11:08
?

Google
Anatoly
15.05.2018
14:17:10
Ilia
15.05.2018
15:22:12
киньте этот комикс сюда
http://apikabu.ru/img_n/2012-03_3/yzd.jpg Вот, всё равно только что случайно нашёл

Andrey
15.05.2018
15:32:50
Жиза

Dadaskis
15.05.2018
15:38:51
А зачем мочить себя прошлого если же себя же можно использовать?

Ilia
15.05.2018
15:42:21
Ну, перекачать знания из мозга одного в мозг другого, да, используя биохимию... А потом (почти) в два раза быстрее программировать...

Igor
15.05.2018
15:43:48
Эх кружной путь до яндексового митапа, и пропускной пункт дотошный, по сравнению с прошлыми-то(

Anatoly
15.05.2018
15:43:58
Боюсь с такими знаниями ты программировать не сможешь

Assasin
15.05.2018
15:45:32
да, даже омолаживающее зелье не смог изобрести

Andrey
15.05.2018
15:54:20
Подскажите быструю реализацию quadtree для групп объектов, которые постоянно меняют свою позицию?

Alexander
15.05.2018
15:57:09
@isenbaev

@webreh

Andrey
15.05.2018
16:23:19
QuadTree статичная структура, конкретно в чем задача?
Есть некоторое множество точек на плоскости, точки образуют группы точек. Точки и, соответственно, группы меняют свою позицию. Нужно определять коллизии между группами точек (тут просто, чекаем пересечение баундс-боксов) и, главное, между точками из разных групп.

Igor
15.05.2018
16:34:44
Есть некоторое множество точек на плоскости, точки образуют группы точек. Точки и, соответственно, группы меняют свою позицию. Нужно определять коллизии между группами точек (тут просто, чекаем пересечение баундс-боксов) и, главное, между точками из разных групп.
Что такое пересечение между точками? Чтобы искать пересечения между баунд боксами есть много разных способов. Простейший - завести статичную 2d сетку и записывать в какой ячейке какие баундинг боксы, скорее всего такого решения хватит. Если интереснее поглубже копать, то смотрите главу Spatial Partitioning в книжке Real-Time Collision Detection.

Andrey
15.05.2018
16:35:41
«Пересечение точек» - имел ввиду их коллизию.

Как определить пересечение баундсов я не спрашивал. Полагаю, такое знают даже дети.

Vladislav
15.05.2018
16:37:12
что такое коллизия точек?

когда две точки совпадают?

Andrey
15.05.2018
16:37:40
“Spatial partitioning” - спасибо, посмотрю.

когда две точки совпадают?
Да, такое определение тоже пойдёт.

Google
Igor
15.05.2018
16:45:44
“Spatial partitioning” - спасибо, посмотрю.
То есть надо прямо точное совпадение точек или все-таки ближайшую точку? Можно конечно сложить точки в квадродерево, но тогда надо его динамически обновлять когда точки двигаются. Опять же я думаю для практических задач сетки хватит.

Andrey
15.05.2018
16:50:23
То есть надо прямо точное совпадение точек или все-таки ближайшую точку? Можно конечно сложить точки в квадродерево, но тогда надо его динамически обновлять когда точки двигаются. Опять же я думаю для практических задач сетки хватит.
В моем случае точки это не точки, а окружности. И окружности эти разных диаметров. Для упрощения задачи, я назвал их точками. Для каждой «точки» на плоскости нужно найти одну ближайшую. А так же нужно найти все точки, с которыми произошла коллизия. Все точки меняют своё положение, поэтому вместо обновления quadtree будет быстрее каждый раз заполнять его заново. Просто quadtree должен быть эффективным не только для поиска, но и вставки. Количество точек заранее известно и их количество меняется редко.

Anatoly
15.05.2018
19:07:51
Вернулся с митапа, посвященному GraalVM: http://www.oracle.com/technetwork/oracle-labs/program-languages/overview/index.html . Есть проект, который поддерживает запуск llvm bitstream. Итого, дожили до запуска C++ в JVM без JNI: https://github.com/graalvm/sulong

Assasin
15.05.2018
19:10:57
звучит круто, но странно: отсутствие тяжелого рантайма, как в jvm, ведь по сути одно из преимуществ C++

Anatoly
15.05.2018
19:12:33
Assasin
15.05.2018
19:13:21
Кому-то необходимо и обратное: использовать c++ базу в jvm
с этой точки зрения да: отличная возможность добавляется в арсенал. Главное, чтобы этот рантайм не убил ту самую производительность, ради которой код и пишется на плюсах

Denis
15.05.2018
19:14:10
ну всяко быстрее JNI будет работать

Anatoly
15.05.2018
19:28:13
Matwey
15.05.2018
19:29:08
нет
Жаль, было бы удобно, наверное

Dmitry
16.05.2018
03:30:18
А никто не игрался ещё с вундервафлей foundation db?

Anatoly
16.05.2018
06:09:37
я пробовал, херня
А что херня и что не удобно?

Alexander
16.05.2018
06:09:54
А что херня и что не удобно?
ну то, что нужно переводить в bytecode

Admin
ERROR: S client not available

Alexander
16.05.2018
06:10:07
и то, что там далеко не каждый C++ код заработает

Google
Ilia
16.05.2018
07:12:03
А как это определяется?

Компилируется, запускается, а потом не работает?

Alex
16.05.2018
07:17:22
ну то, что нужно переводить в bytecode
Лол, и почему это неудобно? Это один из подходов к компиляции, хранению IR и исполнению кода

LLVM тоже С++ переводит в биткод, и исполняет

Alexander
16.05.2018
07:18:58
Хм... Действительно

А теперь бери любое мало-мальски большое приложение и запусти его на граале

LLVM тоже С++ переводит в биткод, и исполняет
Ну и? Там на входе сорцы проги, а не llvm ir

Нет проблем с разными libstdc++

Alexander
16.05.2018
07:20:44
Пробовал уже, только не на С++
Ну так ты на крестах попробуй

Alex
16.05.2018
07:20:49
Затея их интересная, но не то, чтобы слишком юзфул

Alexander
16.05.2018
07:21:00
А то как-то непрофильно получается

Alex
16.05.2018
07:21:15
Ну так ты на крестах попробуй
Неужто мне прийдется OpenJDK поднять на граале ?

Alexander
16.05.2018
07:21:24
Затея их интересная, но не то, чтобы слишком юзфул
Вот и я о том, что не очень то и полезно

Дед Пегас
16.05.2018
07:21:25
Чот срач уровня нужности wasn.

wasm*

Alex
16.05.2018
07:21:54
Нужен, бесспорно

Я делаю доклады о виртуальных машинах джаваскриптерам

Тупеют с их ангулярами на глазах

Говоришь слово "регистр", у них в трубочку уши скручиваются.

Google
Nik
16.05.2018
07:23:02
Говоришь слово "регистр", у них в трубочку уши скручиваются.
Ну это что-то с регистрацией связано, да???

Alex
16.05.2018
07:23:15
Не забудь, у нас пицца-полиси

39170
16.05.2018
09:17:16
ну всяко быстрее JNI будет работать
а почему "всяко" быстрее? jni-вызов это ж, по сути, dlopen/dlsym на функцию из библиотеки, т.е. однократный хэш-лукап с последующим исполнением уже скомпилированного ahead-of-time бинарного года. А в случае грааля, насколько я понимаю, нужно jit-скомпилить биткод, а потом получить возможные кэш-промахи при загрузке бэйсик-блоков...

Ilia
16.05.2018
09:26:16
Говоришь слово "регистр", у них в трубочку уши скручиваются.
У меня тоже б скручивались... 21-вый век, а ты — РЕГИСТР!

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