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

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

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

37 ответов

84 просмотра

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

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 подход больше нравится

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

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

30500 за редактор? )
Владимир
47
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
1
Он в одиночку это дело запилил или была какая-то команда?
Aquinary
12
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Всем привет, нужна как никогда, нужна помощь с IO в загрузчике. Пишу в code16 после установки сегментных регистров, пишу вывод символа. Пробовал 2 варианта: # 1 mov $0x0E, %a...
Shadow Akira
14
Карта сайта