1. 8
  1.  

  2. 8

    It’s good to know that 22 years later the libraries/training/popularity (aka - popularity) is still the impediment to… popularity. I’m seriously tempted to summarize a publication to a tautology, but yes the implication goes the other way - a lack of popularity is in part due to libraries and training (and existing, self-propagating, popularity).

    Both F# and Scala try to evade the library issue by borrowing all the work from their respective platforms. Haskell, SML, and OCaml have taken the harder path of building their own community and growing their own libraries. I used to think this was why they failed to achieve as significant a user base but since then GoLang, Rust, and Dart^H^H^H have all gained popularity without borrowing from another community’s success. Both those received major corporate backing (more than F# even, I believe). Is there an example of a language succeeding in the modern age that did not receive such support or build on an existing community like JVM or .Net?

    1. 4

      Maybe Lua? I’m not a fan, but it seems to be popular. I think it fits into the “build on an existing community” niche. It’s used to customize Awesome WM, Wireshark, Nmap, Neovim, games, an internal thing at the company I’m working for… It’s everywhere.

      1. 2

        How “functional” is Lua on a scale from Haskell to JavaScript?

        1. 5

          Very much on the JavaScript end; Lua and JavaScript are almost like dialects of the same language in some ways.

          1. 1

            Lua is a bit different in that its equality semantics are almost exactly egal from Henry Baker’s paper, and it’s use of coroutines can encourage a more lexical approach.

            Not sure it counts as “modern age” as it predates Ruby and Python.

      2. 3

        I used to think this was why they failed to achieve as significant a user base but since then GoLang, Rust, and Dart^H^H^H have all gained popularity without borrowing from another community’s success.

        Who were all originally backed by entities with the means to prop things up with money and/or people. That I know of, none of those began outside of Google or Mozilla. They are the products of these entities wanting to solve problems that they think they have. As far as adoption, “Nobody Gets Fired For Buying Google” might as well be the new “Nobody Gets Fired For Buying IBM.”

        1. 1

          Younger me found this “popularity begets popularity” tendency to inspire cynicism. These days I’m a bit more at peace about it.

          Part of that is Rust, part of that is seeing that there are some impediments to FP languages, part of that is accepting that first impressions color a ton, and people fought tooth and nail against OOP for years, citing its difficulty. It took many years of just being around for people to think it was normal. Change is hard, but I’ve benefited enormously from keeping an open mind and looking for that challenge.

          1. 1

            I still find it mind boggling how much money Sun spent marketing Java:

            https://www.theregister.co.uk/2003/06/09/sun_preps_500m_java_brand/

          2. 6

            Conquering isolationism is a task for everyone, not just functional programmers. The computing industry is now beginning to deploy standards, such as CORBA and COM, that support the construction of software from reusable components. Recent work allows any Haskell program to be packaged as a COM component, and any COM component to be called from Haskell. Among other applications, this allows Haskell to be used as a scripting language for Microsoft’s Internet Explorer web browser [4].

            Well, it’s definitely written in 1998!

            1. 3

              Ah, I remember that dark time ,where we would be rescued from the despair of CORBA by the hope of SOAP…

              1. 2

                And then, we were to be rescued of the complexity of SOAP by embracing REST.

                And now, are we to be rescued of REST by embracing yet a new miracle solution? Or did we at last reached a local minima that’s gonna last for a while? Only time -or viral blog posts written by kids too cool for HTTP- will tell, I guess.

                1. 4

                  Fear not! GraphQL will save you!