1. 15
    1. 4

      Another gentle bit of evidence that dependency management in python is a mess that drives people away. I wonder if the python core team will ever fix it.

      That said, this person’s use of Mix.install will probably make their scripts unusable in a few years because they’re not specifying the versions. The API does let you do that, tho.

      1. 1

        The API does let you do that, tho.

        Yes! And it’s as simple as:

        Mix.install([
          {:req, "~> 0.3.0"}
        ])
        
      2. 1

        Elixir also comes with a great options parser built in -> OptionParser, that’s really easy to use and fit into your scripts.

        System.argv()
        |> OptionParser.parse(
          strict: [
            debug: :boolean,
            version: :string
          ]
        )
        
        1. 1

          Good write-up. I’m currently in the process of learning Elixir myself, as I’ve been wanting to get a functional language under my belt. Elixir stood out because of it’s expressiveness and combination of interpreter and compiler. It feels very much like a utility language that would work in many scenarios, and using it as scripting language isn’t one I’d considered.

          I’m also very interested in the Phoenix framework.

        🇬🇧 The UK geoblock is lifted, hopefully permanently.