You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The built in machinery is very low level and shapeless 3 was designed alongside it to be a more accessible way to do derivation so, I'm biased obviously, but I'd say "always".
shapeless3-deriving is a pretty small dependency compared with shapeless 2.
Naive use of the built in machinery and inlining will produce huge amounts of bytecode, very similar to what implicit induction does with shapeless 2/Scala 2, so you want to avoid that if possible.
"Naive use of the built in machinery" likely describes Scodec 2 pretty well. :)
Let's investigate what shapeless-deriving provides.
The text was updated successfully, but these errors were encountered:
I'm really missing cats instances for Codec to be able to traverse it freely, it would be nice to provide some initial support using Kittens derives for scala3. Kittens uses shapeless-derived internally already, to a fairly decent extent, and it doesn't make much sense to me why anyone should be back-porting it, except of Enterprisy reasons (hello Comcast, my old friend).
The scodec-cats project defines cats type class instances for scodec types. There might be some missing but the major ones should all be covered.
Re: shapeless-derived, I tried using it a few times and didn't get very far. Would love to see a proof of concept of using it in place of the custom Codec.derived implementation.
From @milessabin:
"Naive use of the built in machinery" likely describes Scodec 2 pretty well. :)
Let's investigate what shapeless-deriving provides.
The text was updated successfully, but these errors were encountered: