• alokir@lemmy.world
    link
    fedilink
    arrow-up
    39
    ·
    1 year ago

    Depends on what you already know.

    Functional languages like Haskell, Clojure or Erlang have a reputation of being hard to grasp.

    Rust's borrow mechanics are hard for some people at first, especially because it's very unique to the language.

    Javascript can be frustrating because it also has some rare features among popular languages, and uses the same keywords for different concepts. It's not bad at all once you let go of your assumptions and dedicate the time to understand how it works under the hood.

    C++ is also notorious for being hard but I haven't used it for a very long time so I can't say anything about it.

    • tatterdemalion@programming.dev
      link
      fedilink
      arrow-up
      11
      ·
      1 year ago

      Javascript can be frustrating because it also has some rare features among popular languages, and uses the same keywords for different concepts.

      I don't think those are the reasons JS is frustrating.

    • gpopides@lemmy.world
      link
      fedilink
      arrow-up
      9
      arrow-down
      1
      ·
      1 year ago

      For Erlang I would say that the hard part is not the language itself (maybe a bit because it is influenced by prolog) but because of the mental model. Using concurrency and parallelism as core concepts of the language and understanding that you don't need a lot of the external tools you would with the more mainstream languages is what's hard imo.

      • JackbyDev@programming.dev
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 year ago

        Yeah I bet, I've always wanted to learn Erlang. People always speak to highly of it. The guy that made Sonic Pi was saying he wished he would've used it because Sonic Pi involves a lot of music loops playing at the same time and stopping individual ones and modifying them etc and because so many of those concepts are baked in he said it would've been nice

    • Nulubez@sh.itjust.works
      link
      fedilink
      arrow-up
      7
      arrow-down
      1
      ·
      1 year ago

      Clojure : if lisp had an illegitimate baby with java. Add to it the pain of setting up fireplace in vim or having to use emacs. At a former employer we had one area in closure. I could read it without much difficulty but damn if it didn't take me weeks to write or update it