1. 13
    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
        ]
      )
      
    3. 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.