What does HackerNews think of gleam?

⭐️ A friendly language for building type-safe, scalable systems!

Language: Rust

#10 in Compiler
#4 in Python
I look forward to typed-Elixir! Some interesting projects targeting the Erlang VM are Gleam [0] and caramel (ML-like, but unfortunately no longer active) [1].

[0] https://github.com/gleam-lang/gleam

[1] https://github.com/AbstractMachinesLab/caramel

I find that a large Elixir codebase is easier to work with than a larger Ruby or JavaScript codebase, but it still has the same difficulties to some degree.

If you're a typing fan as I am, and you are interested in the BEAM then you may want to check out [Gleam, a sibling language of Elixir](https://github.com/gleam-lang/gleam/) which has an Elm/OCaml/F# style static type system. It provides many of the strengths of Elixir but with that statically typed programming style which you may prefer.

(disclosure: I'm the lead dev!)

Another recent Elixir / BEAM convert here. I have touched on a few languages in recent years (Scala, Haskell, Rust) and Elixir is the first that has really got to sit up and take notice. Coming from pretty strict OOP I have found it quite hard, but ultimately it has really got me to sit up and take notice. Id also like to mention Gleam[1] which is a type-safe language running on the BEAM. It's equally friendly and enjoyable to use. The community has also been very welcoming. Also recommend the Thinking Elixir podcast[2} which is a joy to listen to (I am about 25 episodes in so far)

[1] https://github.com/gleam-lang/gleam [2] https://podcast.thinkingelixir.com/

See also, Witchcraft [0] (adds ADTs to Elixir in a subjectively better way than Dialyzer) and Gleam [1] (not Elixir but its own full blown language that uses BEAM but with much more of a Haskell-like flavor) which both offer algebraic data types in their own ways.

I used to do a lot of Python and heard of Elixir as a marrying of BEAM and dynamic typing, so I started learning it. However, as I used it more, I actually moved to TypeScript and more recently Rust after I found that I actually liked thinking in types, and I truly did miss them from Elixir.

[0] https://github.com/witchcrafters/witchcraft

[1] https://github.com/gleam-lang/gleam

Another programming language that is implemented in Rust is Gleam[1]. I think it's a really slick language, but it doesn't implement GC or it's own VM but is more of a source to source transpiler.

[1]: https://github.com/gleam-lang/gleam

So what do you recommend? Rust? JS? TS? Java? C++?

I'd not recommend Scala for other reasons: being multi paradigm makes it hard to learn, read, re-read and collaborate on. Kotlin would be a more sensible choice on the JVM imho (no implicit nulls, fully OO at the core with FP where it makes sense in that context, sum-types, exhaustiveness checks, no exception/annotation frenzy like Java).

And Erlang misses types. Gleam[1] looks cool, and seems to be picking up steam.

Rust is an amazing choice if you need that kind of low-level control over performance in all it's dimensions (except built times).

[1]: https://github.com/gleam-lang/gleam

If you’re looking for a typed BEAM language with great interop with Elixir and other BEAM languages, have you seen Gleam?

https://github.com/gleam-lang/gleam

Hi! I'm the Gleam guy! It out curiosity what would the language need to bring it closer to what you want?

Here's Gleam for anyone interested: https://github.com/gleam-lang/gleam

Have you seen Gleam Lang? It's like Haskell but on BEAM. I was looking into it but I decided that since there's next to no ecosystem for it, I might as well go with something like Rust.

https://github.com/gleam-lang/gleam

Gleam[1] is a typed language on the BEAM. It's still in its early days, more so than Rust. May still be worth keeping an eye on. Nim[2] and Crystal[3] also exist. No idea what their web situation is like, but Nim has a JS compile target, that might be interesting.

[1] https://github.com/gleam-lang/gleam [2] https://nim-lang.org/ [3] https://crystal-lang.org/

Witchcraft works well but it's not statically typed. It uses the patterns of Haskell but they are checked at runtime.

I'm working on a statically typed programming language in the Erlang VM called Gleam. It's very young but perhaps one day it will meet your needs! https://github.com/gleam-lang/gleam

Same. I suffer through it, because the rest is pretty neat.

There is no best way. Fortunately the Elixir core libraries are annotated with typespecs, which gets you like 30% there. But dialyzer sucks, and the typespec syntax itself, as well as its expressiveness, leave a lot to be desired. It's clearly an afterthought.

One day I'm gonna make a TypeScript for Elixir.

Note: There's eg Gleam a statically typed language for BEAM, but it's quite unlike Elixir and it has a much smaller community. https://github.com/gleam-lang/gleam. I doubt using eg Phoenix on Gleam is possible, or if it is, whether it's fun. It looks promising though, especially if you're into Ocaml/Haskell-style "hard" FP.