HNHacker News
TopNewBestAskShowJobs

giacomocava

84 karma · joined November 14, 2023

submissionscomments
giacomocava··on Gleam doesn't compile to Erlang source anymore
Aww thank youuu
giacomocava··on Gleam doesn't compile to Erlang source anymore
Thank you! Too kind
giacomocava··on Gleam doesn't compile to Erlang source anymore
Thank you so much!! Reading this really made my day <3
giacomocava··on Testing Can Be Fun, Actually
Thanks!!
giacomocava··on The Gleam Programming Language
There’s no “unknown” or “any” in Gleam, it’s not possible to cheat the type system that way
giacomocava··on You Don't Need an ORM [video]
Speaker here! I'm really happy about this talk, I hope people enjoy it as much as I enjoyed delivering it :)
giacomocava··on No room for error – A case study of Gleam in production at Uncover
“We wouldn't be using Gleam if it wasn't a safe, sensible - almost boring - choice.” - I think this has become one of my new favourite quotes
giacomocava··on We Rewrote Our Startup from PHP to Gleam in 3 Weeks
Exciting to see new Gleam production uses pop up! Great writeup :)
giacomocava··on Fixing my gripes with GitHub using Gleam and a Raspberry Pi
I have to say, it's been great for hosting my little server! I ssh into it to code using Helix and it's been really good at compiling Gleam and running the language server as well :)
giacomocava··on Optimising for maintainability – Gleam in production at Strand
Amazing to hear success stories of Gleam in production! Running on the beam really feels like a super power
giacomocava··on Gleam v1.12
Omg yes, pattern matching is such an amazing feature I miss it dearly in languages that don't have it!
giacomocava··on Gleam v1.11 Released
Implementing the decision tree optimisation was such a rewarding process, worth every minute I spent head scratching!
giacomocava··on Hyper Typing
Gleam is great too!
giacomocava··on Gleam v1.10.0 Released
> the language server (which is included within the gleam binary) now provides the "find references" feature

This was my #1 most wanted feature, I’m so grateful to Surya for implementing it, he’s amazing!!

giacomocava··on A Code Centric Journey into the Gleam Language YOW 2024
Thank you! Yeah guides and documentation will be a big focus for the core team this year :)
giacomocava··on Gleam v1.9
print debugging is the best debugging <3 Thank you for the kind comment!!
giacomocava··on Gleam v1.9
The language server has been improving at such a fast pace it's hard to keep up! Soon I'll be out of code actions to implement
giacomocava··on Gleam v1.9
All the pain to get echo working was 100% worth it! What a great release
giacomocava··on Gleam Is Pragmatic
> Could you say something about the cases where you did need to write Erlang code?

Sure! For one of my most used packages (https://github.com/giacomocavalieri/birdie) I needed to get the terminal width to display a nice output, that has to be implemented using FFI based on the specific runtime (erlang or js) so I had to write it in Erlang, that was just a couple of lines of code.

But now there's a Gleam package to do it, so if I were to rewrite it today I wouldn't even need to write Erlang for that and could just use that!

> What kind of cases?

Usually it is when you need some functionality that has to rely on specific things from the runtime (like IO operations, actors on the BEAM, async on the JS target, ...) and there's no package to do it already. Most of the common things (like file system operations and such) are already covered

> Were you already proficient in Erlang and its ecosystem?

Not at all :) I knew very little about Erlang (basically nothing behind the syntax), Gleam was my introduction to the BEAM ecosystem and it has worked out great so far!

Hope this is helpful, happy to share my experience here

giacomocava··on Gleam Is Pragmatic
Yeah FP can for sure take some getting used to before it clicks! I think a great resource for that is Gleam's Exercism track (https://exercism.org/tracks/gleam), not only will it teach you the language but by starting with small-ish exercises it can definitely help grokking FP concepts

And if you feel like you're stuck and need help Gleam's Discord is a great place to ask questions :)

giacomocava··on Gleam Is Pragmatic
There's a great article by Erika on use, definitely recommended :) https://erikarow.land/notes/using-use-gleam
giacomocava··on Gleam Is Pragmatic
Pure Gleam will get you really far without having to touch any Erlang, I've done Gleam for almost a year now and there were very little cases where I needed to write Erlang code myself, usually there's already a library that deals with it for most common needs :)
giacomocava··on Roc Lang – Elm but for everywhere [video]
Heard squirrel is well cool :P
giacomocava··on Supercharged Labels – Gleam v1.4.0
I love how every new release becomes my new favourite one, so many nice additions! And I wanted the label shorthand syntax for a long time
giacomocava··on What if best practices were the norm?
That's a great point! Yeah using `Option`, or the newly introduced records is a great help in sticking to the best practices, you're totally right! The problem lies in the fact that it's not the only way to write Java code, you might stick to it but you're not guaranteed that other libraries and projects will use the same practices; that's why I think it's crucial to make those the _only possible way_ to write code. Thanks for reading the article!! :)