Size: a a a

ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)

2020 August 02

D

Dima in ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)
источник

ZM

ZLoyer Matveev in ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)
Dima
он на котлине пишет
какая разница?
источник

D

Dima in ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)
да
источник

D

Dima in ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)
реально на котлине
источник

Oℕ

Oleg ℕizhnik in ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)
вот это тебя пропёрло
источник

D

Dima in ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)
// функтор - вычисление, работающие с  результатами типа А, поддерживает метод map
data class MyRandom<A>(
       val get: (bits: Int) -> A
) {
   companion object {
       val intRandom: MyRandom<Int> = MyRandom { Random.nextBits(it) }
       val hexRandom: MyRandom<String> = intRandom.map { it.toString(16) }
   }
}

// метод map для функтора
fun <A, B> MyRandom<A>.map(f: (A) -> B): MyRandom<B> =
       MyRandom(get = {bits -> f(get(bits)) })

fun main(args: Array<String>) {
   println("random=" + MyRandom.intRandom.get(12)) // выводит random=1247
   println("hexRandom=" + MyRandom.hexRandom.get(12)) // выводит hexRandom=c25
}
источник

w

welcometotheclubbudd... in ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)
Dima
// функтор - вычисление, работающие с  результатами типа А, поддерживает метод map
data class MyRandom<A>(
       val get: (bits: Int) -> A
) {
   companion object {
       val intRandom: MyRandom<Int> = MyRandom { Random.nextBits(it) }
       val hexRandom: MyRandom<String> = intRandom.map { it.toString(16) }
   }
}

// метод map для функтора
fun <A, B> MyRandom<A>.map(f: (A) -> B): MyRandom<B> =
       MyRandom(get = {bits -> f(get(bits)) })

fun main(args: Array<String>) {
   println("random=" + MyRandom.intRandom.get(12)) // выводит random=1247
   println("hexRandom=" + MyRandom.hexRandom.get(12)) // выводит hexRandom=c25
}
Мне нужно что бы я мог в notepad'e читать комфортно
источник

D

Dima in ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)
какой же разъеб скалы дикий
источник

Oℕ

Oleg ℕizhnik in ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)
Начнём с понятия компактная замкнутая категория.
Вот она
interface CompactClosedCategory<A>
источник

D

Dima in ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)
Другие примеры функторов с полезным map

иммутабельный List<A>
MyInputStream<A>
Optional<A>
источник

AS

Andrey Sugak in ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)
Oleg ℕizhnik
Начнём с понятия компактная замкнутая категория.
Вот она
interface CompactClosedCategory<A>
Смешно.
источник

D

Dima in ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)
ну джаву он тоже любит
источник

D

Dima in ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)
типо не забыл, где месил
источник

D

Dima in ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)
MyInputStream
источник

D

Dima in ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)
источник

D

Dima in ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)
Монада — это функтор с двумя дополнительными операциями. Прежде всего, монада, в отличие от функтора, содержит операцию создания из константы, эта операция называется lift:
источник

D

Dima in ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)
@odomontois почему он понятней тебя объясняет?
источник

D

Dima in ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)
мож его в ткс учебный миньон-центр возьмут?
источник

AS

Andrey Sugak in ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)
Dima
@odomontois почему он понятней тебя объясняет?
/get monad
источник

S

Sublime Bot in ПОКА ОДЕРСКИ НЕ ВИДИТ (спидран Олега по тофу)
monad
1) //Monads are kind of types which have some fundamental ops(like a 'List') are:
 //unit(also called pure or apply). which construct a Monad out of a value or out of many values.
 //bind - transforms a monad of certain type parameter into a monad of another type parameter.
источник