Size: a a a

Programming Offtop

2020 April 11

(

( in Programming Offtop
Alexander Nozik
Давай конкретно. Вот тебе нужен сериал модуль, который для иерархии классов в модуле прописывает что и через что сериализовывать. Откуда ты его берешь?

fun <T> serialize(t: T, serializer: Ser<T>): JSON

Я правильно понял?
источник

AN

Alexander Nozik in Programming Offtop
(

fun <T> serialize(t: T, serializer: Ser<T>): JSON

Я правильно понял?
нет
источник

AN

Alexander Nozik in Programming Offtop
Полиморфный сериализатор
источник

AN

Alexander Nozik in Programming Offtop
Ему нужно знать всех наследников, которые могу участвовать и их сериализаторы. Это не к типу приязано, а к модулю
источник

AN

Alexander Nozik in Programming Offtop
Упс, в хаскеле нет полиморфных сериализаторов потому что нет наследования.
источник

(

( in Programming Offtop
Alexander Nozik
Ему нужно знать всех наследников, которые могу участвовать и их сериализаторы. Это не к типу приязано, а к модулю
Я не понимаю
источник

(

( in Programming Offtop
Что такое модуль?
источник

AN

Alexander Nozik in Programming Offtop
(
Я не понимаю
источник

(

( in Programming Offtop
fun <T> SerialModuleCtx.serialize(t: T, implicit serializer: Ser<T>)
источник

(

( in Programming Offtop
Как минимум
источник

AN

Alexander Nozik in Programming Offtop
(
fun <T> SerialModuleCtx.serialize(t: T, implicit serializer: Ser<T>)
И чем это лучше подстановки руками?
источник

(

( in Programming Offtop
Alexander Nozik
И чем это лучше подстановки руками?
Как минимум, не нужно сериализаторы таскать руками
источник

AN

Alexander Nozik in Programming Offtop
Кроме твои иплиситы мигом рухнут, потому что на один и тот же тип в зависимости и зависимом модуле может быть разный набор наследнико
источник

AN

Alexander Nozik in Programming Offtop
(
Как минимум, не нужно сериализаторы таскать руками
А и так не нужно
источник

(

( in Programming Offtop
Аддендум2: сериализатор сам может генерироваться имплиситным и тогда модуль руками не нужно создавать совсем
источник

(

( in Programming Offtop
Alexander Nozik
Кроме твои иплиситы мигом рухнут, потому что на один и тот же тип в зависимости и зависимом модуле может быть разный набор наследнико
Ну, тут нужно покурить правила имплисит резолюшена и избавиться от этой ситуации
источник

(

( in Programming Offtop
Они же в компайл-тайме разрешаются, в чем проблема
источник

AN

Alexander Nozik in Programming Offtop
(
Они же в компайл-тайме разрешаются, в чем проблема
В том, что твои имплиситы к типам байндятся. Все, что не байндится к типу сразу идет нафиг. Разумеется, можно придумать модуль-имплиситы или еще какую фигню, но я пытаюсь донести мысль о том, что это не серебряная пуля совершенно
источник

(

( in Programming Offtop
Alexander Nozik
В том, что твои имплиситы к типам байндятся. Все, что не байндится к типу сразу идет нафиг. Разумеется, можно придумать модуль-имплиситы или еще какую фигню, но я пытаюсь донести мысль о том, что это не серебряная пуля совершенно
Что значит "байндится к типу"?
источник

AN

Alexander Nozik in Programming Offtop
Что такое имплиситы?
источник