Scala Higher-Kinded Types эквивалентны функции расширения дженерик параметра T, с новой фичей контекст ресиверов Kotlin
Scala sasat!
А сами по себе контекст ресиверы это способ пробросить функционал от какого то класса/интерфейса в функцию, не передавая в нее явно параметры, этот функционал появится у this, немного похоже на скалины имплиситы, только все эксплисит
Вот примерчик, сверху дженерик функция, куда через контекст передается JsonScope(интерфейс у которого 1 функция
Теперь мы внутри
Scala sasat!
А сами по себе контекст ресиверы это способ пробросить функционал от какого то класса/интерфейса в функцию, не передавая в нее явно параметры, этот функционал появится у this, немного похоже на скалины имплиситы, только все эксплисит
Вот примерчик, сверху дженерик функция, куда через контекст передается JsonScope(интерфейс у которого 1 функция
toJson() для дженерик A) и логгер, интерфейс у которого функция info()Теперь мы внутри
printAsJson можем нахаляву "из ниаткуда" вызывать toJson() и `info()`а в main мы явно пробросили 2 объекта через with, которые подходят под эти интерфейсыThis media is not supported in your browser
VIEW IN TELEGRAM
Наглядный пример работы Mark & Sweep GC
gavr_sas
Следующая цель добавить while циклы, никаких захардкоженный синтаксисов практически нет, поэтому это просто сообщение whileTrue для блока кода результатом которого является bool
done
whileTrue обычное сообщение для лямбды () -> Bool, принимающее другую лямбду
whileTrue обычное сообщение для лямбды () -> Bool, принимающее другую лямбду
gavr_sas
done whileTrue обычное сообщение для лямбды () -> Bool, принимающее другую лямбду
А вот и первый работающий примерчик с розетты
This media is not supported in your browser
VIEW IN TELEGRAM
#indie
Как сделать иммерсив сим в изометрии, легко
Как сделать иммерсив сим в изометрии, легко