Size: a a a

Kotlin Community

2020 June 26

VP

Vladimir Petrakovich in Kotlin Community
Alexander Nozik
Методом обезьяны с гранатой? Так себе идея
Методом 1.prototype.foobar = ...
Это считается "обезьяна с гранатой"?
источник

AN

Alexander Nozik in Kotlin Community
Vladimir Petrakovich
Методом 1.prototype.foobar = ...
Это считается "обезьяна с гранатой"?
это monkey patching
источник

AN

Alexander Nozik in Kotlin Community
После патча что-нибудь может взорваться
источник

VP

Vladimir Petrakovich in Kotlin Community
Ок, я не настоящий сварщик
источник

AN

Alexander Nozik in Kotlin Community
Vladimir Petrakovich
Ок, я не настоящий сварщик
Просто прототипы - это такое поле граблей, что их лучше не трогать. Но насколько я понимаю, примерно так и работают котлиновские классы в JS. И именно поэтому для них работают is
источник

BP

Bogdan Panchenko in Kotlin Community
Alexander Nozik
Просто прототипы - это такое поле граблей, что их лучше не трогать. Но насколько я понимаю, примерно так и работают котлиновские классы в JS. И именно поэтому для них работают is
Так вообще работают классы в джс 😔 насколько я знаю. Либо оно компилится в прототипы
источник

AN

Alexander Nozik in Kotlin Community
Bogdan Panchenko
Так вообще работают классы в джс 😔 насколько я знаю. Либо оно компилится в прототипы
Ну в JS нет классов (ES6 классы - это довольно тонкая сахарная прослойка над прототипами). Только прототипы. Когда язык делали, никто не думал, что на нем программы длиннее 30 строк писать буду 🤷‍♂️
источник

BP

Bogdan Panchenko in Kotlin Community
Alexander Nozik
Ну в JS нет классов (ES6 классы - это довольно тонкая сахарная прослойка над прототипами). Только прототипы. Когда язык делали, никто не думал, что на нем программы длиннее 30 строк писать буду 🤷‍♂️
А сейчас всякие реакты да ангуляры. Ладно заканчиваем оффтопить
источник

АО

Алексей Овсянников... in Kotlin Community
Andrei
Не эксперт по JS, но мне казалось нет проблемы это обойти если генерить код, сгенерить еще дополнительное поле/параметр с тэгом для типа
большинство жсеров тоже так думают:) если каждый будет генерить по куче методов/полей для своих нужд (можно вспомнить, как до нормальных классов делали подобие классов) - получатся объекты по своей структуре сильно более дорогие, чем джавовые
источник

АО

Алексей Овсянников... in Kotlin Community
Alexander Nozik
кейсов на reified generics раз два и обчелся
сюда же можно вспомнить, что кроме котлина их никто использовать не будет, а тогде всё это дело проще в компилятор на compiletime оставить
источник

AN

Alexander Nozik in Kotlin Community
Грааль корутины допилили: https://medium.com/graalvm/graalvm-20-1-7ce7e89f066b
источник

VP

Vladimir Petrakovich in Kotlin Community
Я бы сказал "стали поддерживать валидный байткод, который не генерирует javac"
источник

I

Ilmir in Kotlin Community
Вызов принят! Теперь надо только сломать эту поддержку, генерировав тот же байктод немного по-другому.
источник

RI

Ruslan Ibragimov in Kotlin Community
Как раз к 1.4.20 сломать
источник

IO

Iaroslav Orlov in Kotlin Community
Ilmir
Вызов принят! Теперь надо только сломать эту поддержку, генерировав тот же байктод немного по-другому.
можно это в другом языке каком-нибудь? 😭
источник

AS

Andrei Shikov in Kotlin Community
Ну новый бэкенд же, он в 1.4 уже сто проц что нибудь сломает 🙂
источник

A

Aleksei🐈 in Kotlin Community
Господа, как все-таки используя serialization сериализовать в json список с разными типами элементов, например "rows":[
     [1234567,"SE",123],
     [1234567,"DE",231],
     [1234567,"US",321]
   ]
источник

M

Mi in Kotlin Community
Aleksei🐈
Господа, как все-таки используя serialization сериализовать в json список с разными типами элементов, например "rows":[
     [1234567,"SE",123],
     [1234567,"DE",231],
     [1234567,"US",321]
   ]
Я думаю писать кастомный сериализатор поверх data класса
источник

M

Mi in Kotlin Community
Либо возможно можно обойтись просто Array<Any>, но там смотреть от задачи  надо
источник

A

Aleksei🐈 in Kotlin Community
Mi
Либо возможно можно обойтись просто Array<Any>, но там смотреть от задачи  надо
Ну задача - сериализовать список из нескольких элементов string long float
источник