• Darkmoon_AU@lemmy.zip
    link
    fedilink
    arrow-up
    5
    ·
    7 days ago

    AFAIK it’s an excellent language let down by political in-fighting in the ecosystem and subsequent fragmentation of is otherwise ‘standard’ libraries. IMO this kills the language.

    Kotlin offers most of what Scala does with a much more solid and supportive ecosystem, it’s the obvious winner in the ecological niche of ‘better JVM languages’, for me.

    • u_tamtam@programming.devOP
      link
      fedilink
      arrow-up
      1
      ·
      3 days ago

      I don’t think that’s a fair representation. Like for any community, you tend to hear the most about a vocal minority, and drama there was, indeed. That’s not unique to Scala, that doesn’t mean that a majority was engaged in it or was affected by it.

      The point about fragmentation holds, though: Scala is a multi-paradigm language, so you tend to have communities assembling around core set of libraries and abstractions that fit their specific needs. It’s not a bad thing from an engineering perspective (you get to pick the most adequate tool for the job), but it will be intimidating at first, and understandably ridiculous when coming from a different ecosystem that you’ve a choice of a dozen or so JSON deserializing libraries. https://index.scala-lang.org/ Is a great help, though.

    • sobchak@programming.dev
      link
      fedilink
      arrow-up
      3
      ·
      6 days ago

      Been a while since I’ve used Scala, but I remember Scala being much more focused on functional programming than Kotlin.

    • somegeek@programming.dev
      link
      fedilink
      arrow-up
      2
      ·
      6 days ago

      Umm, Clojure joined the chat.

      Clojure in my opinion is the most beautiful and powerful language I have ever seen.

      It has the full power of java ecosystem, amazing and simple concurrency, extremely simple syntax and semantics. You literally start ascending to other dimensions after a while of writing clojure. It’s like you are talking to your software.