
You
05.09.2017
20:11:57
onCLick
L большое

Sergey
05.09.2017
20:12:24
Спасибо за советы, попробую

Google

Va
05.09.2017
20:12:38
да, это все будет не нужно, если сделать этот интерфейс лямбдой )

Lev
05.09.2017
20:31:58
Может груви ещё попробовать

Va
05.09.2017
20:45:17
я тоже так думал
grails, вся фигня
но нет (
не хватает в нем котлина

Lev
05.09.2017
20:57:17

Vic
05.09.2017
21:18:26
Кто-нибудь знает, почему дизайнеры языка для ()-нотации выбрали метод invoke, а не apply, пойдя в разрез со скалой и джавным интерфейсом Function?

Igor
05.09.2017
21:20:37
Потому что они C# любят ? (там Invoke )

Vic
05.09.2017
21:21:17
Ах вот как

? animufag ?
05.09.2017
21:21:34
вообще да неочевидное решение, хотя само слово вполне ок. мб чтобы видеть где джавовый аплай , а где котлиновый инвок
ну они могут встретиться рядом
неоднозначности для компилятора конечно не будет

Google

? animufag ?
05.09.2017
21:22:56

Dmitry
05.09.2017
21:28:09
ну холивара ради invoke более говорящее имя чем apply для лямбды, как по мне

Vic
05.09.2017
21:29:55
А apply уже забукано для экстеншен лямбды с ресивером this...
Еще вот такой пример.
data class Azaza(val x: Int, val y: Int) {
companion object {
operator fun invoke(x: Int, y: Int) = Azaza(y, x)
}
}
fun main(args: Array<String>) {
println(Azaza(1,2))
}
Конструктор экранирует invoke. В скалке конечно такой *** нет ) Хотя, если это цена избавления от слова new, то я готов платить такую цену ))
А напомните еще вот что. Исторически по-моему был приоритет у экстеншен метода над мембером? Но к 1.0 релизу это поменялось и теперь member always wins. Где там обнаружили косяк в первоначальном дизайне?

Rikland
05.09.2017
21:35:51

Vic
05.09.2017
21:35:55
Пример может кто знает

Rikland
05.09.2017
21:39:09

Maxim
05.09.2017
22:03:38

Rikland
06.09.2017
05:56:03
Платят.
Странно, мне платят за решение бизнес проблем (: И я не слышал от владельцев: нас не устраивает язык программирования.

Руслан
06.09.2017
05:58:30
Зависит от компании в которой ты работаешь :) в технологических вполне могут платить
Протобаф на фронт это конечно мощно, за что вы так браузеры ненавидите то?

Rikland
06.09.2017
06:00:57

whalemare
06.09.2017
06:06:36
Парни, есть в стдлибе котлина функа, которая разбивает коллекцию на pair с элементами?

Руслан
06.09.2017
06:09:19

whalemare
06.09.2017
06:09:41

Руслан
06.09.2017
06:11:22
Мне тоже так показалось, что это довольно странно. Тк я сомневаюсь, что разработчики браузеров упролись и это дело оптимизировали. Поскольку метнстрим, это раньше был html, а потом json.
Одно другому не мешает, просто протобаф это бинари, а браузеру бинари парсить не самая простая задача, да и бессмысленно, т.к. в итоге ты все равно на es6 пишешь, типов то нет :) поэтому мы использовали сваггер чтобы генерить тайпскрипт, ну а сейчас можно просто на Котлине писать

Sergey
06.09.2017
06:16:27
collection.zip
zipWithNext же, zip это чтобы 2 коллекции собрать попарно

Руслан
06.09.2017
06:19:51

Google

Sergey
06.09.2017
06:22:45
и это аж в 1.2 будет

Vic
06.09.2017
06:26:22
c.zip(c.drop(1)) что-то типа такого

Boris
06.09.2017
06:41:09

Quantum Harmonizer
06.09.2017
06:47:50

Lev
06.09.2017
06:49:42

Dmitry
06.09.2017
07:04:17

whalemare
06.09.2017
07:04:29

Руслан
06.09.2017
07:09:11

Lev
06.09.2017
07:13:05

Руслан
06.09.2017
07:13:33
Язык с типами :)

Quantum Harmonizer
06.09.2017
07:14:44

Lev
06.09.2017
07:17:58
Язык с типами :)
Если появится еще одна команда разработки - я не могу ее принуждать писать на котлине. Но я очень хочу четкого определения пакетов. Вся система которую я ща пишу работает на очередях. И внешние обращения тоже через очереди (через своеобразный firewall). Я бы очень хотел иметь нечто типа протобафа для использования с сообщениях очереди. может черт с ним со сжатием траффика, но хотя бы иметь железную четкость в определениях пакетов. Ща используются тектовые описания - хреново помогают. Может такой контингент.
Вот еще http://msgpack.org/
еще thrift какой то.... да их тут кишмя

Руслан
06.09.2017
07:25:07
Тебе что нужно, чтобы у данных была схема, или чтобы разработчики на фронте типы имели?
Если хочешь чтобы при удалении поля из сообщения на фронте ломалась сборка, нужен язык с типами: Kotlin, Typescript. И остаётся простое: описать схему и генерировать по ней классы. А под низом будет обычный json.

Quantum Harmonizer
06.09.2017
07:29:34

Lev
06.09.2017
07:31:19
Я хочу чтобы мой набор классов для пакетом на каком то там ЯП воспроизводился в классы пакетов у коллег на других ЯП. Ну и... хоть какая то валидация этого.
Соответственно коллегам очень просто понять - поменялись ли пакеты, все ли они заполнили.
Как то так.
Но на каком языке - не мое дело. Хотят - пусть пишут на js. Но у них точно будет некое отображение моих пакетов и они могут дешево их обновлять.

Google

Lev
06.09.2017
07:33:15

Rikland
06.09.2017
07:49:23
Можно даже за основу взять ту же xsd
Плюс что-то ещё что будет описывать связи

Sergey
06.09.2017
07:52:33
есть же http://json-schema.org/

Николай
06.09.2017
07:55:16
Всем привет, кто пробовал собирать в js что нибудь? (кроме hello)

Rikland
06.09.2017
08:03:08
Можно пойти другим путём, сущности писать на Java и потом брать annotation processing и генерить классы для Kotlin и схему.

Николай
06.09.2017
08:11:19

Rikland
06.09.2017
08:12:47

Николай
06.09.2017
08:18:22
@Rikland спасибо)) буду играться

Rikland
06.09.2017
08:24:19
Есть ещё knockoutjs, но там много кода и он после генератора, его нужно переписывать. Что-то более сложное не пробовал конвертировать.
Естественно мануалы, как это использовать нужно искать на оригинальных репозиториях/сайтах (: ссылки в описаниях

Lev
06.09.2017
08:27:50
через градл собрал js их котлина (amd)
В index.js добавил импорт осбранного файла. Перед эти добавил импорт котлин.js. Не пашет, все равное не хочет находить котлин

Руслан
06.09.2017
08:35:52
Значит неправильно что-то прописал

Rikland
06.09.2017
08:37:17

Lev
06.09.2017
08:37:46
Я думаю, оно может по классу сгенерить прото-файл и обратно

Google

Rikland
06.09.2017
08:38:42

Lev
06.09.2017
08:39:52
.... нет у меня xsd еще никакого.
У меня есть простые классы пакетов. На яве/котлине.

Rikland
06.09.2017
08:45:33
У тебя есть чуваки которые лабают на го. И кладут с большой колокольни на Java и Kotlin. Как ты им будешь рассказывать, что куда принимать и передавать?
Есть вариант дать им proto файлы.
Если тебе нужно работать с Kotlin в браузере, тогда генеришь интерфейсы. Если это jvm сторона, допустим rest, генеришь классы, которые можно в json сериализовать. Если вебсокеты, тут выбираешь то физическое представление что тебе нужно(trift/protobuf) или json
Если вторая сторона на диковинном языке написана. Или вручаешь xsd схему и пусть сами развлекаются или что-то ещё. В конце концов, можно написать вьюшку, которая будет показывать эту схему в графическом представлении (:
Может я где-то не прав? ?

Lev
06.09.2017
09:32:54
чтобы они по ним восстановили классы, но только ни их ЯП.
И это как я понимаю будет сделано утилитой а не ручками
упоролся я с этим js уже

Yuri
06.09.2017
12:14:51
Ребят всем привет, никто не знает почему файлы котлина не попадает в aar когда библиотеку через грэдл с репозитория тянешь? если локально добавлять то всё нормально
может процесс сборки и линковки для джава и котлин файлов отличается или что-то такое

balolam
06.09.2017
12:29:35