I hope its a big update with static types
static types is the main thing that keeps me from putting more time into learning / using elixir.
Elixir – HUGE Release Coming Soon
31–40 of 83 posts
Re: Elixir – HUGE Release Coming Soon
#32Re: Elixir – HUGE Release Coming Soon
#33I hope its a big update with static types
I thought so too, but Jose Valim says "never before seen on Elixir or the BEAM", while Gleam exists and Jose undoubtedly knows about that project: https://gleam.run/
Re: Elixir – HUGE Release Coming Soon
#34Re: Elixir – HUGE Release Coming Soon
#35Re: Elixir – HUGE Release Coming Soon
#36I hope its a big update with static types
static types is the main thing that keeps me from putting more time into learning / using elixir.
Every time I read statements like this from Jose
"This brings another discussion point: a type system naturally restricts the amount of code we can write because, in order to prove certain properties about our code, certain styles have to be rejected."
I can't but think few things:
- by compilers (in this case static type checkers) laws we all know that there are valid programs that won't satisfy the type checker and viceversa there's only a handful (none being production or development ready) of compilers powerful enough to infer all code bugs
- limiting the expressiveness of a language isn't necessarily a bad thing
I've noticed that people with a huge background in dynamic languages tend to have a natural refusal for static types. Lispers are a community with such an attitude, even the typed lisps like typed/racket seem to be born more to please people wanting typecheckers and academics than the userbase itself.
But I, and my mind, work the other way around: I want to think about the types first, I need them to express my domain and my DSLs, so I need an expressive type system able to translate my thoughts and validate all of my program with nothing but types. It's possible in plenty of languages (most famous one is TypeScript with its declare keyword) to do type-driven development and I can't really function without it.
Once a program has been well modeled, once I've seen the APIs, then and only then I get into implementation and it is by far the part I spend less time on.
Every time I read a lisp dialect without static types (most of them) my mind just doesn't work properly, I can't follow much. And I really believe that the lack of commercial success for many of these languages derives from how poorly non statically-typed languages scale when klocs and number of maintainers of a project start increasing.
Re: Elixir – HUGE Release Coming Soon
#37Earlier quoted context omitted.
Finally, externally visible module constants (i.e attributes)! Ok, probably not, but one can dream.
Zero-arity functions are your externally visible module constants. :)
Also you can't pattern match on a function return value IIRC. Or maybe I didn't find the right syntax, I get "invalid pattern in match" or "cannot invoke remote function inside a match" when pattern matching on function parameters.
There's also solutions with macros, but why complicate something so simple :)
Re: Elixir – HUGE Release Coming Soon
#38He has been teasing this for a couple of months now. This cryptic twitter post[1] would suggets something related to nx[2] as numbat is their logo and that is the alt text on that tweet. The most out of the box thing I can think of is that one of the image generative models has been ported to elixir. That would be insane! That numbat twitter image is suspiciously 512x512. [1] https://twitter.com/josevalim/status/1583…
Re: Elixir – HUGE Release Coming Soon
#39It's not, but it would be hilarious.