Scala does not move in the direction of more monadic IO, but rather in the direction of “direct style”, preferring continuations to monads, but without providing support for continuations out of the box.| Alexandru Nedelcu
What’s the difference between Option[A] and A | Null? What about between Either[A, B] and A | B?| Alexandru Nedelcu - Blog
Scala’s coding style advised to use 2 spaces of indentation, but that was before Scala 3’s optional braces, which introduces significant indentation. It’s time for an upgrade of the coding style.| Alexandru Nedelcu - Blog
Here’s a fairly straightforward Scala 3 sample, using significant indentation. Can you spot the compilation error?| Alexandru Nedelcu - Blog
In Scala, how do we model enumerations of values? What are the possible issues? How does Scala compare with Java? What are the changes in Scala 3?| Alexandru Nedelcu - Blog
I dislike Scala 3’s significant whitespace syntax. At this point it’s safe to say that I hate it, being (IMO) an unfortunate evolution of the language.| Alexandru Nedelcu - Blog
What if we’d use Scala’s type system for tracking side-effects in impure code, too? In the Scala/FP community we use and love effect systems, such as Cats Effect, with its IO data type. “Suspending side-effects” in IO is great, but in Scala it’s either IO or forgoing any kind of type-safety for side-effects, and that’s bad.| Alexandru Nedelcu - Blog
I don’t like given, as an alternative to implicit in Scala 3. The more I try working with it, the more it annoys me; and my understanding may be superficial, but I don’t like this direction. Here’s a comparisson between given and implicit, that I hope is fair…| Alexandru Nedelcu - Blog
Scala is considered a multi-paradigm language, for better or worse, being one of the best OOP languages, which is why it’s so versatile. Let’s do a design exercise, going from OOP to static FP, and back. Let’s understand the various techniques promoted in the community, and understand why the OOP design isn’t just “idiomatic” for Scala, but can be superior to alternatives.| Alexandru Nedelcu - Blog
Online meetup on Scala 3’s newly introduced types and features for encoding type classes.| Alexandru Nedelcu - Blog