@ProCxx

Страница 1363 из 2477
Andrei
05.10.2017
11:25:07
Университет не учит и не может учить практическим аспектам
А я как сказал? У меня был хороший университет.

В хороших учат.

Google
Stanislav
05.10.2017
11:28:58
Constantine
05.10.2017
11:29:25
а что с ними не так?
возможно, с ними все так, я просто хочу их внимательно изучить)

вопрос по coroutines: а зачем вообще нужны stackless coroutines если есть futures?

Berkus
05.10.2017
11:43:55
но это же разные вещи

Andrei
05.10.2017
11:44:11
Ты про правильно приготовленные фьючерсы или про плюсовые?

Constantine
05.10.2017
11:44:31
Ты про правильно приготовленные фьючерсы или про плюсовые?
Я слышал, что в C++ std futures есть проблемы и портировал себе folly-реализацию (не изучал конкретные проблемы)

Stanislav
05.10.2017
11:47:06
блин, cppcon не торопится с видосиками

неделю уже жду видос с нишановым

Constantine
05.10.2017
11:48:06
но это же разные вещи
ладно, пойду читать матчасть

Stanislav
05.10.2017
11:49:40
Ты про правильно приготовленные фьючерсы или про плюсовые?
а где про правильные фьючерсы можно почитать? )

Constantine
05.10.2017
11:49:42
мне почему-то показалось, что stackless coroutines будут чистым сахаром над future chain

а где про правильные фьючерсы можно почитать? )
емнип считается, что в folly они правильные; я просто художественно адаптировал реализацию

Stanislav
05.10.2017
11:50:42
Google
Constantine
05.10.2017
11:51:02
в отличие от буста, фолли не обмазано макросами и замечательно читается

Stanislav
05.10.2017
11:55:36
> художественно адаптировал
типа снял фильм по мотивам? как "Темная башня" ?

Constantine
05.10.2017
11:57:42
типа снял фильм по мотивам? как "Темная башня" ?
практически; взял реализацию, мне нужна была исключительно версия со строгой гарантией запуска на основном потоке для then и входной гарантией, что promise и его future создается на основном потоке; кроме того, сам по себе настраиваемый executor из folly мне не нужен, поскольку есть система передачи сообщений на основной поток

Ilia
05.10.2017
11:59:34
Блин, крик души: Какой М....к придумал так писать ? int signalId = mp.notifySignalIndex(); if (-1 != signalId) //... Я считаю, только полные дебилы должны так писать. возможно, я неправ. Дискасс..

Constantine
05.10.2017
12:00:25
Vitalii
05.10.2017
12:01:01
Невнимательность, усталость и прочие человеческие факторы никто не отменял.

Constantine
05.10.2017
12:01:23
Так и в Java так пишут, без всяких VC 6.0
Наследие никто не отменял

Berkus
05.10.2017
12:01:40
от человеческих факторов это защищает, а так надо конечно -Wall -Wextra -Werror использовать от подобных ошибок

Ilia
05.10.2017
12:01:46
Я считаю, что не пошёл бы ты.
Спасибо за ваше мнение, оно нам совсем неинтересно.

Constantine
05.10.2017
12:02:25
На самом деле, я лично конвенцией запрещаю однократно использованные переменные, кроме геометрии и прочего тяжелого кода, требующего объяснений, и ошибка сама по себе исправляется if (mp.notifySignalIndex() != -1)

Ilia
05.10.2017
12:03:05
Меня просто БЕСИТ, когда я читаю IF ( -1 == какого чёрта КОНСТАНТУ надо с чем-то сравнивать и проверять ещё потом?

Constantine
05.10.2017
12:03:24
Вы не программировали на Visual Studio 6.0

Constantine
05.10.2017
12:03:39
вариант, но что делать если signalId потом еще неоднократно используется? )
И при этом оно не является enum class для switch? Маловероятно

Google
Ilia
05.10.2017
12:03:47
Вы не программировали на Visual Studio 6.0
Я не программировал на VC6.0 ?

Да я на 1.6 ещё программировал. 2.0, 4, 5, ...

Berkus
05.10.2017
12:04:25
И при этом оно не является enum class для switch? Маловероятно
auto signalId = mp.whateverIndex(); if (-1 != signalId) processMore(signalId);

Constantine
05.10.2017
12:04:44
auto signalId = mp.whateverIndex(); if (-1 != signalId) processMore(signalId);
ну это уже дефект языка, поправленный в 17 стандарте)

Ilia
05.10.2017
12:05:08
Кстати, переменные в IF уже разрешили ?

Constantine
05.10.2017
12:05:19
17 стандарт

nuke_bird
05.10.2017
12:05:22
да вроде

Ilia
05.10.2017
12:05:25
должны были вроде в 17-ом

nuke_bird
05.10.2017
12:05:53
if(cond; expr) вроде. cond и expr могут совпадать в некоторых случаях

Constantine
05.10.2017
12:06:10
auto signalId = mp.whateverIndex(); if (-1 != signalId) processMore(signalId);
ошибка архитектуры (processMore должна была рассматривать случай)

как вариант, auto dispatch_signal = [&](int signal) { //реализация };

Berkus
05.10.2017
12:07:25
ошибка архитектуры (processMore должна была рассматривать случай)
это просто пример повторного использования

Constantine
05.10.2017
12:07:53
это просто пример повторного использования
в 90% случаев такой код написан "для удобства отладки (c)"

Ilia
05.10.2017
12:09:40
Ну ладно, я думаю, доводы высказаны, и мне более-менее всё ясно...

Спасибо

в 90% случаев такой код написан "для удобства отладки (c)"
А ещё такая штука есть в VC отладчике, ОЧЕНь удобная: возврат последней вызванной функции показывается. НИГДЕ больше нету.

Ilia
05.10.2017
12:12:00
Admin
ERROR: S client not available

Constantine
05.10.2017
12:12:16
Даже если не показалось в auto, всегда можно посмотреть, что в eax

Google
Ilia
05.10.2017
12:12:16
Watch: eax
Да ладно, кто его там знает, где этот возврат...

Потом, там может быть объект сложной структуры.

Constantine
05.10.2017
12:12:27
Возврат в стандартных конвенциях всегда в eax

Указатель в watch копируем, профит

Ilia
05.10.2017
12:12:49
Ну да, спасибо.

Но как удо бно было бы если бы везде светилось..

Constantine
05.10.2017
12:13:19
Я в экстремальной форме фанат читаемость кода » удобства отладки

Олимпиадное прошлое, чтение распечаток и так далее

Timur
05.10.2017
12:42:41
Возврат в стандартных конвенциях всегда в eax
не всегда. Даже в 64-битном режиме есть XMM0 как минимум для double. Но и в зависимости от обстоятельст могут быть вовлечены rdx, xmm1. (А уж про 32-битный режим я и не говорю). Ну т.е. _всегда_ полезна поддержка отладчика при визуализации возвращаемого значения, и простого watch eax не достаточно

Berkus
05.10.2017
12:43:09
eax, rax, eax:edx д

rax:rdx по идее даже может быть

Sasha
05.10.2017
12:44:00
ребят, а кто с openssl работал? нужон sha256, sha512 и hmac, а я туплю и не понимаю чому не робит( есть примерчики какие нибудь?

Berkus
05.10.2017
12:45:13
там есть тесты прямо в сорцах

если тебе нужны только хэши возьми либу поадекватнее, openssl говно полное

Антон
05.10.2017
12:46:06
я говнокодер

Sasha
05.10.2017
12:46:14
а что есть адекватное?

я говнокодер
приму в команду

Антон
05.10.2017
12:46:28
я говнокодер
https://gist.github.com/usernameak/759ad596eb1542084f8fb4640c8de4f7

Google
Berkus
05.10.2017
12:47:14
https://gist.github.com/usernameak/759ad596eb1542084f8fb4640c8de4f7
если это парсер чего-то простого то убей себя

Антон
05.10.2017
12:47:31
если это парсер чего-то простого то убей себя
.section ROUT .use .routines .section REGI register(scope=local;size=ptr) l0 .section CODE .routine(end=:endHW) HW .string(reg=.a0) "Hello, World!\0" heapallocarr l0 .a0 nativecall 1 l0 return .label :endHW call HW

подобного кода

Berkus
05.10.2017
12:48:21
возьми нормальный lexer и parser и сделай простой recursive descent parser

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