Conversation
|
Ideally, I'd move builds & releases to Github Action, but I need support from @vkostyukov for that |
6a7ef4f to
a1208b5
Compare
@sergeykolbasov I haven't worked with scala 3 too much but union types got me excited. Can you share why they are "meh"? |
|
@spockz Yeah, I got excited as well. Later I found out that due to their commutative nature it's impossible to define a proper type classes derivation. It's also untagged comparing to def test[A, B](v: A | B): Unit = v match {
case a: A => println(a)
case b: B => println(b)
}It's pretty much useless pattern matching without macrosing all the way down due to type erasure. I've hacked some macro indeed, but there were issues when |
|
Update: The issue I'm facing now is that circe for Scala 3 doesn't support incomplete JSON decoding, so our examples fail to compile. Trying to figure it out now. |
|
Why do we even need |
Done:
HListin favor of newTupleWitness.Tin favor of native literal types &ValueOfget("hello") { }apply methods, thanks to the new fancy@targetName. That API looks much user-friendlier now, seeMappable. I had to do some repetitive work, but it's still cleaner for the users I hope.ToAsyncstuff that enabled Scala & Twitter Futures inMappable. I don't think the HTTP library should do it anyway. If users want to use different effects in their app, they shall convert between them explicitly.TODO: