Size: a a a

Programming Offtop

2020 June 11

AM

Andrew Mikhaylov in Programming Offtop
Кирилл Романенко
Чё у тебя там за корутины такие?🤨 Свои билдеры сделал? Или тупо дефолтные билдеры юзаешь?
Ты ж в теме, что Ильмир, ну, в JB работает, да? :) Странненький вопрос
источник

КР

Кирилл Романенко... in Programming Offtop
Andrew Mikhaylov
Ты ж в теме, что Ильмир, ну, в JB работает, да? :) Странненький вопрос
А, да? Лол
источник

AM

Andrew Mikhaylov in Programming Offtop
Кек)
источник

КР

Кирилл Романенко... in Programming Offtop
Сорян, я не всегда сижу в этом чатике, пропускаю такие моменты.))
источник

КР

Кирилл Романенко... in Programming Offtop
Я думал, он как и все мы, набрасывает говнокод на вёдрышко
источник

AK

Anton Korotkikh in Programming Offtop
@ilmirus а ты будешь корутины с лумом дружить? что jb пока думает про лум, или забили пока просто на него, мол не созрел ещё?
источник

D

Denys in Programming Offtop
Кирилл Романенко
Я думал, он как и все мы, набрасывает говнокод на вёдрышко
Он вила делает тем, кто потом набрасывает. :)
источник

I

Ilmir in Programming Offtop
Anton Korotkikh
@ilmirus а ты будешь корутины с лумом дружить? что jb пока думает про лум, или забили пока просто на него, мол не созрел ещё?
Пока не в планах, сначала надо многопоточные корутины в K/JS завезти (чего тоже нет в планах, это моя личная хотелка и хотелка Ромы Елизарова), а потом уже думать как поддержать лум. С технической стороны я проблем особых не предвижу, у меня даже есть ветка (ещё со времен 1.2) со стекфул корутинами (правда не на луме). Проблема только во взаимодействии текущим корутин с корутинами на луме. Но это тоже решаемо, надо просто аккуратно пройдись по всем возможным взаимодействиям и аккуратно поддержать, как мы сделали в 1.3 при поддержке взаимодействия экспериментальных корутин с релизными.
источник

I

Ilmir in Programming Offtop
В самых ближайших планах - отрубать у гидры головы по одной, начиная с https://youtrack.jetbrains.com/issue/KT-16222
источник

AK

Anton Korotkikh in Programming Offtop
Ilmir
Пока не в планах, сначала надо многопоточные корутины в K/JS завезти (чего тоже нет в планах, это моя личная хотелка и хотелка Ромы Елизарова), а потом уже думать как поддержать лум. С технической стороны я проблем особых не предвижу, у меня даже есть ветка (ещё со времен 1.2) со стекфул корутинами (правда не на луме). Проблема только во взаимодействии текущим корутин с корутинами на луме. Но это тоже решаемо, надо просто аккуратно пройдись по всем возможным взаимодействиям и аккуратно поддержать, как мы сделали в 1.3 при поддержке взаимодействия экспериментальных корутин с релизными.
в k/js под многопоточкой имеется в виду использования нескольких тредов/воркеров под капотом?
источник

I

Ilmir in Programming Offtop
Anton Korotkikh
в k/js под многопоточкой имеется в виду использования нескольких тредов/воркеров под капотом?
Ага, воркеров. Но сначала надо их ввести в язык, чтобы выглядело не так отвратительно, как сейчас, когда надо выносить код воркера в отдельный модуль.
источник

AK

Anton Korotkikh in Programming Offtop
Ilmir
Ага, воркеров. Но сначала надо их ввести в язык, чтобы выглядело не так отвратительно, как сейчас, когда надо выносить код воркера в отдельный модуль.
А зачем это? жс же не спасти, многопточка по идее всё равно кривая будет, будут воркеры, но всё равно по идее пожрут перфоманс на сериализацию и десериализацию данных между собой во время общения. Там жеж вроде ничего не завезли до сих пор кроме sharedArrayBuffer. Или таки можно извлечь профит?
источник

I

Ilmir in Programming Offtop
Anton Korotkikh
А зачем это? жс же не спасти, многопточка по идее всё равно кривая будет, будут воркеры, но всё равно по идее пожрут перфоманс на сериализацию и десериализацию данных между собой во время общения. Там жеж вроде ничего не завезли до сих пор кроме sharedArrayBuffer. Или таки можно извлечь профит?
Именно на SharedArrayBuffer у меня и вся надежда.
источник

AM

Andrew Mikhaylov in Programming Offtop
Ilmir
Пока не в планах, сначала надо многопоточные корутины в K/JS завезти (чего тоже нет в планах, это моя личная хотелка и хотелка Ромы Елизарова), а потом уже думать как поддержать лум. С технической стороны я проблем особых не предвижу, у меня даже есть ветка (ещё со времен 1.2) со стекфул корутинами (правда не на луме). Проблема только во взаимодействии текущим корутин с корутинами на луме. Но это тоже решаемо, надо просто аккуратно пройдись по всем возможным взаимодействиям и аккуратно поддержать, как мы сделали в 1.3 при поддержке взаимодействия экспериментальных корутин с релизными.
А что там с многопоточным Dispatchers.Default в K/N? 😅
источник

I

Ilmir in Programming Offtop
Andrew Mikhaylov
А что там с многопоточным Dispatchers.Default в K/N? 😅
Это уже к Роме вопрос. В компиляторе многопоточные корутины поддержаны, причем пришлось изменить модель памяти для их поддержки.
источник

AK

Anton Korotkikh in Programming Offtop
Ilmir
Именно на SharedArrayBuffer у меня и вся надежда.
там ещё вторая проблема, которая меня одолевала, это сам механизм сериализации, условного говоря в браузере (и в ноде до недавнего времени тоже) есть только жсон stringify/parse который не дружит с базовыми структурами типа set, map и вообще с классами. т.е. передавать можно только то, что помещается в жейсон.
источник

I

Ilmir in Programming Offtop
Anton Korotkikh
там ещё вторая проблема, которая меня одолевала, это сам механизм сериализации, условного говоря в браузере (и в ноде до недавнего времени тоже) есть только жсон stringify/parse который не дружит с базовыми структурами типа set, map и вообще с классами. т.е. передавать можно только то, что помещается в жейсон.
Ага. Это проблема, особенно в K/JS, где Char - это объект Char { value: 26 }, который после передачи в другой воркер становится просто { value: 26 }.
источник

AM

Andrew Mikhaylov in Programming Offtop
Ilmir
Это уже к Роме вопрос. В компиляторе многопоточные корутины поддержаны, причем пришлось изменить модель памяти для их поддержки.
Да, про relaxed модель памяти видел коммиты. Ясно, спасибо :)
источник

AN

Alexander Nozik in Programming Offtop
Andrew Mikhaylov
Да, про relaxed модель памяти видел коммиты. Ясно, спасибо :)
Был доклад Гиллигана на котлинконфе
источник

AM

Andrew Mikhaylov in Programming Offtop
Alexander Nozik
Был доклад Гиллигана на котлинконфе
Я корутинные оттуда все послушал, -native-mt, который с многопоточкой, но с однопоточными диспетчерами, в этом плане не менялся, насколько я знаю.
источник