5 ms·
For me static typing is essential not when I am writing a new application from scratch, but when I am coming into huge old legacy code projects. For example, I
by gregkerzhner 6y ago
For me static typing is essential not when I am writing a new application from scratch, but when I am coming into huge old legacy code projects. For example, I am currently working on a messy and old Swift / Objective C application and having first class IDE support for things like calling hierarchies is pretty amazing to unwind spaghetti code. Also, it's a good feeling to be able to delete a big chunk of code and be 100% confident that its not being used anywhere if your project compiles. Does Dialyzer seem like it would allow you to do things like this safely as well?
My other huge gripe about Elixir when I worked on it last year was lack of IDE autocompletion. This to me is a the #1 dealbreaker in working with dynamically typed languages. Im a horrible speller and having to run my program every time just to find out that I missed a capital letter somewhere in my code is infuriating.
Has Dialyzer and IDEs (VSCode I assume) gotten good enough yet to have decent autocomplete support? When I was using Elixir with WebStorm the experience was less than optimal.
- strofcon 6y agoI definitely get the point about static typing. I've seen the same need in legacy codebases myself. :-) That said, I'm head-over-heels for Elixir. As for autocomplete and such, there's a pretty good project for vscode called something like "Elixir LSP (fork)". Be sure to use the fork version, it's a continuation of the old stale original extension. In more general terms, the `elixir-lsp` project is pretty solid (and lies underneath the VSCode extension, FWIW), and I've had good luck with it so far in neovim with CoC + coc-elixir.
- giljjj 6y agohttps://elixirforum.com/t/introducing-elixirls-the-elixir-language-server/5857/90 https://elixirforum.com/t/introducing-elixirls-the-elixir-la... The original author of the plugin passed the controls back to the current fork developers, so you can return to the original one as it is the same as the fork. https://elixirforum.com/t/introducing-elixirls-the-elixir-language-server/5857/93 https://elixirforum.com/t/introducing-elixirls-the-elixir-la... The fork will probably be deprecated soon