Current state of Elixir on Windows?

The Elixir language itself is great on Windows. The pain all comes from the ecosystem of wrapper libraries. Almost all of the contributors are on *nix, which makes it common for the parts handing builds with VS C++ nmake etc. more fragile, which leads more users to abandon Windows for *nix, and further reinforce the cycle.

In contrast, Python has a bit more platform diversity both in users and library authors, so the wrappers for C libraries are generally ergonomic from any major platform.

I’m always open to learning where I’m wrong, just trying to point out something I really believe could help the Elixir ecosystem grow.

2 Likes

If I had it my way, I’d not support Windows, it’s a horrid platform for building on so I’m not sure why anyone would, but I never had the issues stated here with elixir when I built on it, even building bcrypt was painless (I just added it as a dependency and it built ‘just fine’). Honestly it just sounds like people are not setting up their development environments properly, after all you wouldn’t expect meeseeks to build without rust or bcrypt to build without a C compiler or python’s scientific libraries to build without a C and fortran compiler to build it’s BLAS bindings after all. ^.^;

For note, python takes a LOT of work to compile well on windows, I embedded it as a scripting language for a rather large program about 15 years ago. Even compiling erlang/elixir from scratch is rather simple in comparison (even though you don’t need to do that on windows thanks to the installers unless you ran git master like I often do).

I haven’t devved on Windows since the early 2000’s, so correct me if I’m wrong, but wasn’t there a “nuget” package manager and an Elixir package that @Onor.io maintained? Wouldn’t a package manager install everything that’s actually needed for base erlang & Elixir functionality (additional bindings not necessarily included)?

Yep, but the installers already do that too so eh. The issue they were having above was languages used by the ‘additional bindings’, which is not an elixir issue. :wink:

How far does Windows’ Linux integration extend? Does it only work with bash or can you actually run a whole stack on it?

I use mingw and have no issues. But WSL (the new bash shell in Win10) works quite well as long as you don’t need some traditionally root-only functionality like low level sockets or so (most people won’t need that), or GUI’s.

Apparently there is a way to have GUI in WSL as well:
How to add a GUI to the new bash console in Windows 10
I am having some troubles reproducing it though. (wanted to see observer running there)

No that still doesn’t run a GUI in WSL, that runs it in an xserver that is running on windows (and yep, it’s doable, but slow and laggy). People would love to get an actual GUI running on WSL then, as you could then get a proper desktop in to it.

Oh also! WSL’s file access is bloody-friggin-SLOW compared to running native in linux, just be aware. Sockets are slow too, but that’s just windows, for both.

Right, I should have mentioned that. :no_mouth:

1 Like