@dlangru

Страница 568 из 719
Denis
15.05.2018
20:30:55
return cast(R)value не катит?
"вредные советы"

White_116
15.05.2018
20:31:22


короче, возвращаясь к старой теме. Максимально костылизирую.

Pavel
15.05.2018
20:32:26
с -m64 работает?

Google
White_116
15.05.2018
20:33:53


что бы постоянно ручками не прописывать (скрин), хочется автоматизировать это хозяйство

Pavel
15.05.2018
20:35:31
Ну указывай возвращаемый тип как еще один параметр шаблона, так же можно?

Ты же знаешь в каждой строке какой тип должен вернуться

White_116
15.05.2018
20:36:35
"Максимально костылизирую."

Igor
15.05.2018
20:37:03
Я правильно понимаю что лень руками прописывать тип this.td_id?

Pavel
15.05.2018
20:38:17
Я так и не понял что требуется

Igor
15.05.2018
20:38:33
)))

White_116
15.05.2018
20:39:26
в таком случае легче ссылку кинуть.

Igor
15.05.2018
20:40:44
Используй обьявление через type(thisCall(....)) td_id;

Или trait(ReturnType, thisCall))

Не могу с мобильника попробовать

Google
Pavel
15.05.2018
21:00:02
Учитывая, что возвращаемое значение не является частью сигнатуры, в большинстве случаев хватит auto.

Igor
15.05.2018
21:07:34
https://run.dlang.io/is/se9e1F

Pavel
15.05.2018
21:14:51
ReturnType!(f!(int)) id; сокращается до int id;

Igor
15.05.2018
21:15:48
или так https://run.dlang.io/is/ElDZUR

ReturnType!(f!(int)) id; сокращается до int id;
это понятно, но я так понял что хочется автоматизации для более сложного случая (большее число параметров, неочевидный тип возвращаемого значения)

Pavel
15.05.2018
21:20:02
Пример был не очень наглядным. Второй лучше.

Dmitry
16.05.2018
03:02:49
CTFE не знает границ?
Есть одна смешная - не может double в строку перевести в CTFE. А в остальном все действительно очень круто, у меня щас в компайл-тайме проводятся символьные раcсчеты с дифференцированием, обращением матриц, упрощением тригонометрии и т.п., а из результата генерится D код и вставляется через mixin.

Stanislav
16.05.2018
03:04:02
магия а почему double не может? может на форуме пожаловаться - авось в следующем релизе запилят как с pow было )

Dmitry
16.05.2018
03:05:40
Я глубоко не копал причину. Но выдает прям заготовленное сообщение, что вот именно это format в CTFE не могёт.

DarkRiDDeR
16.05.2018
08:03:35
Небольшой бенчмарк сериализации данных в D. Принимали участие std.json cerealed msgpack-d drmi.sbin Jsonizer + std.json Победителем в нашей номинации "Лучший" стал Сerealed. Поздравляем его! Немного отстал MsgPack. Поздравим его со вторым местом. Спасибо за внимание" Отчётик mega.nz/#!H6pX3a7B!63rcZr4XzbPRqDGryRzUpCkgK0tnOvI3PBn_wIUTHUA https://github.com/DarkRiDDeR/test-d-speed-serialization

Denis
16.05.2018
08:04:42
Если вам нужна скорость просто не юзайте json

Stanislav
16.05.2018
08:05:08
а asdf?

они вроде хвастались типа оч быстрое всё у них )

https://github.com/tamediadigital/asdf

Denis
16.05.2018
08:07:17
А что ещё?)) xml?
у вас осталась последняя попытка!

Valeriy
16.05.2018
08:08:47
DarkRiDDeR
16.05.2018
08:09:56
только не XML ))

Denis
16.05.2018
08:10:17
bson

Stanislav
16.05.2018
08:10:57
тогда уж сразу протобаф )

Google
Denis
16.05.2018
08:11:48
тогда уж сразу протобаф )
они не взаимозаменяемы же

Ievgenii
16.05.2018
08:12:54
Ну не проблема сделать самому разбор/упаковку в какой-то свой бинарный протокол

Суть в поддержке этого протокола с другой стороны (если это какая-то коммуникация)

Поддержка json есть практически везде

Пусть он и не очень быстрый, но он распространенный

а на счет протобафа - это крутая штука, но есть один нюанс. Ты им не упакуешь свою структуру, а только его

Ievgenii
16.05.2018
08:14:42
А при таком раскладе ты попадаешь на мапинг своей структуры на их

Denis
16.05.2018
08:14:51
Поддержка json есть практически везде
что ты поднимаешь под "везде"?

в процессорах интел поддержки json нет

И что?
ой всё

Ievgenii
16.05.2018
08:15:07
велосипединг
Если тебе нужна скорость и задача звучит как: сохранения состояния

Ievgenii
16.05.2018
08:15:27
значит ты пишешь велосипед
Конечно! Но он быстрый

Denis
16.05.2018
08:15:53
Другие языки
в языках поддержки протоколов тоже обычно нет, исключение - бейсик, наверно

Ievgenii
16.05.2018
08:16:23
в языках поддержки протоколов тоже обычно нет, исключение - бейсик, наверно
Я имею ввиду есть либы поддерживающие json практически на всех языках

но глючный
Ну если ты пишешь глючно - то да

Google
Denis
16.05.2018
08:16:42
Я имею ввиду есть либы поддерживающие json практически на всех языках
это и к bson относится libbson-1.0-0 - Library to parse and generate BSON documents - runtime files libbson-dev - Library to parse and generate BSON documents - dev files

DarkRiDDeR
16.05.2018
08:16:45
поднял тему холивара ))

Denis
16.05.2018
08:17:20
Возможно
100% точно

Stanislav
16.05.2018
08:17:21
поднял тему холивара ))
asdf проверишь?) интересно

DarkRiDDeR
16.05.2018
08:17:46
да. Быстро его воткнуть ))

в тесты

Denis
16.05.2018
08:18:54
так что сравнивали тёплое с мягким немношк

Ievgenii
16.05.2018
08:20:47
https://stackoverflow.com/questions/8186912/convert-a-struct-to-a-byte-or-void-in-d/8187047

Admin
ERROR: S client not available

Ievgenii
16.05.2018
08:20:59
Думаю это будет быстрее всего)))

Ну, если оно работает

Я не проверял

Denis
16.05.2018
08:23:34
Ну, если оно работает
оно не работает, как минимум потому что порядок байтов получателю будет неизвестен

DarkRiDDeR
16.05.2018
08:24:07
так что сравнивали тёплое с мягким немношк
есть такое )) JSON всё равно можно использовать наподобие сериализации данных. Была интересна его скорость работы

Ievgenii
16.05.2018
08:24:18
Если нужно сохранить состояние, а потом его развернуть - норм

DarkRiDDeR
16.05.2018
10:03:52
добавил тесты на LDC для ASDF и ProtoBuf https://github.com/DarkRiDDeR/test-d-speed-serialization ProtoBuf по скорости при десериализации всех рвёт, однако по скорости сериализации даже уступает некоторым решениям. Не очень гибок ASDF по скорости лучше стандартных решений Json. Однако сериализатор для структуры Long сломался и в тесты с ней не попал (сильно не разбирался) CEREALED пока что наиболее быстрый и гибкий пока по моим тестам

Denis
16.05.2018
10:04:30
есть такое )) JSON всё равно можно использовать наподобие сериализации данных. Была интересна его скорость работы
любой формат можно использовать для сериализации, даже jpeg. но нельзя путать сериализацию в формат и конструирование документа заданного формата

Google
DarkRiDDeR
16.05.2018
10:07:59
В cerealed даже объекты классов можно сериализовать и десериализовать. У ASDF допустим такого нет

Ievgenii
16.05.2018
10:10:35
А вообще - делаешь сериализатор через DI и не паришься)

Не взлетело - заменил

Pavel
16.05.2018
10:15:23
Так cerealed это же бинарная сериализация

DarkRiDDeR
16.05.2018
10:16:00
у меня тут месиво сериализаторов и бинарных и не бинарных

даже просто JSON попал

цель была оценить скорость работы, размер сериализованных данных, ну и гибкость ))

Dark
16.05.2018
10:22:40
Чего ребята, экономите на спичках?)

Pavel
16.05.2018
10:24:50
Вечером $100 налево, $100 направо, в утром: "где мои $200!!?"

Dark
16.05.2018
10:26:56
Не, неудачное сравнение

Eto
16.05.2018
10:27:30
Чего ребята, экономите на спичках?)
А вы перестаньте дома из спичек строить.

Dark
16.05.2018
10:28:11
Вечером $100 налево, $100 направо, в утром: "где мои $200!!?"
Скорее, вечером $99 налево, $99 направо, а утром: "зато $2 сэкономил!"

Pavel
16.05.2018
10:28:57
если данные гнать локально/интерпроцессно, то от вида сериализации много чего зависит

а тут куда ни плюнь в текст попадёшь

DarkRiDDeR
16.05.2018
10:30:43
? таким темпом реально скоро будет уходить столько на сигареты

Dark
16.05.2018
10:31:03
если данные гнать локально/интерпроцессно, то от вида сериализации много чего зависит
Дык для локальных данных JSON не лучшее решение. А вот общаться им с другим софтом - лучше и не придумаешь, особенно если надо иногда руками редачить

Куришь небось?
Мануалы считаются?

DarkRiDDeR
16.05.2018
10:32:17
Кубинские мануалы куришь?

Eto
16.05.2018
10:33:08
Помнится мне, в Dшной группе ВК, человек спрашивал, как ему сделать копию объекта. Кто-то посоветовал сериализовать в JSON и сразу десериализовать.

Страница 568 из 719