169 похожих чатов

Кстати о котлине.. Я глянул немного в рефлексию(в дебагере пробежался

о KType/KClass)
И ужаснулся.. я обнаружил там.... Protobuf. Почему его используют?

37 ответов

44 просмотра

Потому что это самый универсальный на данный момент формат сериализации со схемой.

Alexander Nozik
Потому что это самый универсальный на данный момен...

А зачем оно в рефлексии ? Метадату извлекать ?

Bohdan Panchenko
А зачем оно в рефлексии ? Метадату извлекать ?

Насколько я понимаю, вопрос был почему метадата протобафом сериализуется

Nail-Khanipov Автор вопроса
Alexander Nozik
Насколько я понимаю, вопрос был почему метадата пр...

Предполагается ли ее использовать вне котлина/рефлексии/метаданных? (Придумал извратиться: скомпилять котлин в wasm, Настроить какой нить бридж в котлин из wasmtime и доставать метаданные растом)

Nail Khanipov
Предполагается ли ее использовать вне котлина/рефл...

WASM Компилятор будет в скором времени в котлин. Плюс есть старый компилятор через LLVM, но он не поддерживается.

Nail Khanipov
А что не так с LLVM?

я думаю идея в том, чтобы не городить свой рантайм, как сейчас есть у K/N с LLVM там в K/WASM идёт плотная интеграция с Wasm GC proposal и interop с JS и всем остальным будет проще в будущем через отдельный backend, а не через LLVM можно ещё в чатике @kotlin_js узнать больше инфы, там вроде разработчики k/js и k/wasm одни и те же)

Nail-Khanipov Автор вопроса
Oleg Yukhnevich
я думаю идея в том, чтобы не городить свой рантайм...

Меня не сильно интересует браузерный wasm :) Только server-side, только хардкор Но это звучит хорошо

Nail Khanipov
Меня не сильно интересует браузерный wasm :) Тольк...

а я вроде нигде и не сказал про браузер :)

Nail-Khanipov Автор вопроса
Oleg Yukhnevich
а я вроде нигде и не сказал про браузер :)

Interop с js и котлин js.. Али кто-то на котлине пишет node.js? :)

Nail Khanipov
Interop с js и котлин js.. Али кто-то на котлине п...

не знаю пишут ли, но это возможно) вон, у меня в рсокет-котлин даже есть рабочий tcp nodejs server транспорт) просто экосистема самого k/js слабо развита пока что, и упор больше на браузер, да

Nail-Khanipov Автор вопроса
Oleg Yukhnevich
не знаю пишут ли, но это возможно) вон, у меня в р...

Меня грустит экосистема самого котлина. Все либо js либо jvm.

Nail Khanipov
Меня не сильно интересует браузерный wasm :) Тольк...

Это не хардкор, а "не понятно зачем". Не сказать еще хужей

Nail Khanipov
Interop с js и котлин js.. Али кто-то на котлине п...

Кто-то пишет. Только не понятно, зачем

Nail Khanipov
Меня грустит экосистема самого котлина. Все либо j...

почему же? ktor умеет с 2.0 в K/N сервер (rsocket-kotlin тоже умеет) новая модель памяти - скоро будет by default перфоманс K/N улучшают потиху сейчас по мне самая большая проблема это сложности в распространении артефактов, которые зависят на нативные либы, типа того же openssl, curl и чего угодно другого

Nail-Khanipov Автор вопроса
Oleg Yukhnevich
почему же? ktor умеет с 2.0 в K/N сервер (rsocket-...

Да нативные либы это боль. Хоть статикой заворачивай...

Nail-Khanipov Автор вопроса
Oleg Yukhnevich
почему же? ktor умеет с 2.0 в K/N сервер (rsocket-...

можно конечно статически линковать, как в компоузе со skia, но выход ли это?) вот будет partial linking будет чуть лучше с этим, хотя бы вроде можно будет отловить в рантайме, что нет какой-то динамической либы - но опять же, фиг знает как оно будет работать и когда оно будет а делать как с JVM - возможность сделать один артефакт с апи, а 2-ой с либой нативной внутри - вроде как нельзя пока что нормально

Nail Khanipov
Pure kotlin! Common! Mpp!

Не понял, почти все центральные либы мультиплатформа. А что такое pure kotlin? выполняться-то на чем?

Nail Khanipov
Pure kotlin! Common! Mpp!

так а чего не хватает то?)

Nail Khanipov
Interop с js и котлин js.. Али кто-то на котлине п...

Да, выше тред по скада 🌚😁 если вопрос про nodejs, а не котлин + нода

Nail-Khanipov Автор вопроса
Oleg Yukhnevich
так а чего не хватает то?)

Юнит тестов :3 (kotest не центральная либа) Какого нибудь общего интеропа(что бы меньше писать expected/actual). Рефлексии (часть интероспекции на reflect, сами рефлексии только на jvm) Чтото ещё было.. не помню

Nail-Khanipov Автор вопроса
Alexander Nozik
Не понял, почти все центральные либы мультиплатфор...

Pure kotlin - выполнять на любой из поддерживаемых платформ. Накатал common и работает :) (Идеальный мир... А потом нужно написать либу, которая работает с COM- только винда.. и также фигня как с питоном получается..)

Nail Khanipov
Юнит тестов :3 (kotest не центральная либа) Какого...

Как вы себе рефлексию в нативе представляете?

Nail-Khanipov Автор вопроса
Alexander Nozik
Как вы себе рефлексию в нативе представляете?

С генерацией костылей во время компиляции

Nail Khanipov
Юнит тестов :3 (kotest не центральная либа) Какого...

1. мне в kotlin.test не хватает только параметизированных тестах - в котест вообще всё есть мне кажется из коробки, зачем ей быть центральной не понимаю - просто у людей есть выбор, не думаю что это плохо 2. а интероп с чем? с нативным кодом? не всегда лучший выход, да и мне кажется что это просто никому сильно не нужно - сделать вроде не супер сложно (я собираюсь что-то такое делать, но не знаю, когда руки дойдут) 3. уже написали про reflekt

Nail-Khanipov Автор вопроса
Alexander Nozik
https://github.com/JetBrains-Research/reflekt

На данном этапе это не поможет сделать что нибудь di на подобии javax.inject(jsr-310) с инджектом в конструктор :( в common

Nail Khanipov
На данном этапе это не поможет сделать что нибудь ...

Поможет. Даже KSP поможет. но если вы сами это себе не доделаете, никто за вас не доделает. Пока.

Nail Khanipov
Pure kotlin - выполнять на любой из поддерживаемых...

pure kotlin мне кажется никогда не будет и в этом его сила - в интеропе с уже существующим кодом то, что интероп сейчас вне JVM иногда хромает как раз дело времени со временем и dukat для js подтянут и cinterop / commonizer будут лучше а потом и ещё что-нибудь может появится проблема в том, что из-за того, что kotlin подходит везде, желаний у пользователей много, а ресурсы ограничены - вот и приходится в JB приоритизировать - а приоритизация всегда кого-то в чём-то обделят :)

Nail Khanipov
На данном этапе это не поможет сделать что нибудь ...

koin ksp plugin уже вроде такое умеет да и видел уже ещё 2 или 3 проекта, которые через compiler plugins БЕЗ РЕФЛЕКСИИ вовсе это делают)

Nail-Khanipov Автор вопроса
Alexander Nozik
Это не хардкор, а "не понятно зачем". Не сказать е...

Использовать котлин как встраиваемый язык... С "нативной песочницей" и когда wasi будет

Nail Khanipov
На данном этапе это не поможет сделать что нибудь ...

Что бы прям само инстансы создавало и клало ? Ну такое себе, мне вон котлиниkoin/kodein подход больше нравится

Похожие вопросы

Обсуждают сегодня

а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Добрый день. Хочу сделать отрисовку по команде на панели. Почему-то рисуется только при втором вызове. С чем может быть связано, не подскажете? procedure TForm1.FormDblClick(...
Kirill Filippenok
20
Всем доброго дня! Подскажите может кто использовал связку Pagebuilder + Clientsetting. Сами параметры с типом pagebuilder в модуле Clientsetting работают нормально, можно такж...
Александр Добриков
12
А почему в си некоторые вещи работают с двойными кавычками некоторые с одинарными? Нельзя было все сделать с одними или чтоб работало с разными? например чтоб выводить строки ...
.
15
Всем привет! Нужен совет от опытных. Переношу свой проект с Делфи 10.2 Токио на Лазарус 3.2 установленный через инсталлятор fpcupdeluxe-x86_64-win64. При импортировании проект...
Дмитрий Завгородний
7
Всем привет! Подскажите. Я написал приложение на Delphi 10.2 Tokyo под Windows 10. И передо мной стал вопрос о том чтобы сделать это приложение кроссплатформенным (под Linux и...
Дмитрий Завгородний
24
Good afternoon, I just started learning php in conjunction with mysql. I am registering a system on a local Mamp server using phpMyAdmin. It seems to be stored normally in the...
ManGo
1
Эх кто-то пришел и весь праздник испортил :( You need complex FBX scene importing setup to change things on import? good luck with that. You need navigation and pathfinding? g...
Serg Gini
5
Добрый день! Такая проблема возникла, написал код на Python, который компилирует, собирает и запускает файлы .s А в случае работы нужно то же самое делать для .asm Чем эти фа...
A Mori
5
Всем привет! procedure TForm1.FormCreate(Sender: TObject); type TStartEnd = record S: Byte; E: Byte; end; var a, b: TStartEnd; begin {1} a.S := 1; {2} a.E := 2; ...
Руслан Михайлович
10
Карта сайта