New Gleam Just Dropped
77,996
Published 2024-06-02
Article
gleam.run/news/fault-tolerant-gleam/
By: Louis Pilfold | twitter.com/louispilfold
My Stream
twitch.tv/ThePrimeagen
Best Way To Support Me
Become a backend engineer. Its my favorite site
boot.dev/?promo=PRIMEYT
This is also the best way to support me is to support yourself becoming a better backend engineer.
MY MAIN YT CHANNEL: Has well edited engineering videos
youtube.com/ThePrimeagen
Discord
discord.gg/ThePrimeagen
Have something for me to read or react to?: www.reddit.com/r/ThePrimeagenReact/
Kinesis Advantage 360: bit.ly/Prime-Kinesis
Hey I am sponsored by Turso, an edge database. I think they are pretty neet. Give them a try for free and if you want you can get a decent amount off (the free tier is the best (better than planetscale or any other))
turso.tech/deeznuts
All Comments (21)
-
Classic prime: i dont understand why this feature exists Also prime 15 seconds later: this is the best feature ever
-
Wooo Gleam!!! Thanks for coving it
-
0:05 "if I had all the time on the world you're on my list" is what she told me too
-
I tried gleam when it first released and it I loved it. It’s clean and lean. Excited to try it again.
-
Louis as benevolent dictator > Language writers trying to please everybody of all styles
-
"Flip take it out" Flip: lemme end this man's career
-
14:18 you might want to doublecheck your NotNil assertions. This can be a bit tricky in go. Because the receiver type here is `any`, if you pass a value of for example type `*int` with a value of `nil`, the `item == nil` expression will not be true because when passing `*int` as `any`, the actual thing being passed is something like a tuple the value itself (nil) and the type, which together is then not `nil`, hence the `item == nil` check will not catch it. You can do a proper nil--check in this case using reflection only for example like this: ```go import "reflect" func isNil(v any) bool { if v == nil { return true } rv := reflect.ValueOf(v) switch rv.Kind() { case reflect.Ptr, reflect.Interface, reflect.Slice, reflect.Map, reflect.Chan, reflect.Func: return rv.IsNil() default: return false } } ```
-
I agree, what finally helped me using neovim was to just use it vanilla. Then downloaded Kickstart for configuring a theme and installing neovim-tree. Then I started playing with LSP. But I always try to keep shortcuts vanilla, if I need a script to do something, I ignore it. Lots of research of how to do things, but, things are slowly working out
-
Not yet sure about Gleam, but anything that brings more folks to the BEAM is good.
-
Have you tried the LSP for Golangs "templ". Don't think you got the LSP to work in vim when you tested templ (in the video I saw). It is quite good!
-
is assert optimized away in a release version?
-
It's me! Gia' como! being Italian it is so strange to me xD 😅
-
3:40 made me think of OCaml immediately
-
Gleam mentioned!
-
Full yt video on panic and asserts would be nice.
-
on error resume. What could possibly go wrong?
-
The "butt as an avatar" bots wasted no time commenting!
-
Gleam 5 years experience on job list next year
-
Looks nice, hope it will gain popularity and adoption
-
Looking into Gleam as a C# developer. I agree throw is bad. I now use Union/Option types in C# just to avoid propagating throw's from a try/catch. Try/catch is an expensive for an application. I'll have to dig a little deeper into negative space programming, never heard of it until now. My apps can't crash but I can return a 500 status code so I have objects like Error, Threw, Panic to signal to the developer that there's a mismatch in the application state.