| ▲ | halfmatthalfcat 3 days ago |
| Strange since Scala’s huge standard library and FP/OO choose-your-own-adventure garnered a ton of criticism as being “too unopinionated” leading to many ways to accomplish the same thing and confusion on what was “blessed”. If anything Scala 3 was an attempt to standardize and reduce some of the existing complexity to make it more widely appealing. |
|
| ▲ | lmm 3 days ago | parent | next [-] |
| > If anything Scala 3 was an attempt to standardize and reduce some of the existing complexity to make it more widely appealing. I know that's the argument, but I think it ends up the opposite. Splitting one consistent feature into three overlapping subsets is not a simplification in my book - it might make the easy cases slightly easier, but it makes the hard cases much harder. |
|
| ▲ | brabel 3 days ago | parent | prev [-] |
| What’s the preferred syntax in Scala 3? Python-like indentation based or C-like curly braces? Is FP the “default“ or OOP? |
| |
| ▲ | nikitaga 2 days ago | parent | next [-] | | Preferred syntax is whatever looks nicer to you. It's not really two different syntaxes, just one more flexible syntax where if you choose to go full braceless, it ends up looking like python. I personally like the new braceless python-like syntax. Scala has two main camps, one is purist FP (cats / zio / etc.), another is plain Scala, banking on ergonomic OOP+FP fusion. Neither of those is the default. FP advocates are more vocal online but that's because they need a bunch of libraries (thus more OSS work) to make that approach work, whereas the other camp just uses plain Scala and simpler libraries that aren't reinvented every 5 years, so their online presence is not as apparent. | |
| ▲ | pjmlp 3 days ago | parent | prev [-] | | It seems Python-like indentation based is the one being pushed, due to way Python was own mindshare around learning to programm language, and AI DSL. I would assume FP is the one being pushed with stuff like Cats and ZIO, anyone that wants OOP with good enough FP has already moved back into modern Java, or Kotlin. |
|