Live data from Hacker News

Gleam v1.12

github.com

31–40 of 91 posts

Re: Gleam v1.12

#32

The official website has an interesting footer > As a community, we want to be friendly too. People from around the world, of all backgrounds, genders, and experience levels are welcome and respected equally. See our community code of conduct for more. Black lives matter. Trans rights are human rights. No nazi bullsh*t. On one hand I applaud that their community standards are inclusive, but on the other hand, it shou…

But this is not very relevant to the release announcement?

Re: Gleam v1.12

#33

The official website has an interesting footer > As a community, we want to be friendly too. People from around the world, of all backgrounds, genders, and experience levels are welcome and respected equally. See our community code of conduct for more. Black lives matter. Trans rights are human rights. No nazi bullsh*t. On one hand I applaud that their community standards are inclusive, but on the other hand, it shou…

Trans people are over represented in compilers communities. You don’t get programming languages without the hard work of people in the trans community. In a world where they are constantly under attack, it’s important to make them feel safe and welcome. Trans people are welcome in our dev communities and that needs to be explicitly stated these days, because trans inclusion is not implied in our bigoted society.

Re: Gleam v1.12

#34

The official website has an interesting footer > As a community, we want to be friendly too. People from around the world, of all backgrounds, genders, and experience levels are welcome and respected equally. See our community code of conduct for more. Black lives matter. Trans rights are human rights. No nazi bullsh*t. On one hand I applaud that their community standards are inclusive, but on the other hand, it shou…

> Shouldn't be that blatantly ideological, it's not a political platform

Yeah! This always stands out like a sore thumb on the website. Like _yeah_, all of it should go without saying! You're a freely available programming language, of course everyone can use it! Of course everyone is welcome! Does a hammer care about your gender or race? No, anyone can use it! It's also very weird and a little childish to specifically include "no nazi bullshit". Isn't it obvious that "nazi bullshit" isn't welcome? Like a no-brainer? Why does a programming language feel the need to say this? Are prominent nazis actively showing interest in Gleam and trying to promote their "bullshit" with it?

Also, the phrase "nazi bullshit" is severely downplaying the problem with the nazis. "Bullshit" is usually something mildly inconvenient, somewhat unfair, kinda infuriating, but it usually doesn't threaten anybody and doesn't fuel world wars.

Re: Gleam v1.12

#35
I really like gleam. I have a few unfinished side projects in gleam with about 10k lines of code, so I've had enough of a taste to know I like it. I can't wait to see how it matures. I plan to write more gleam in the future. I am particularly excited about the possibilities of sharing more code between webapp frontends and backends. Gleam has so much potential and is already quite productive.

I am not that online of a person. But I joined the discord to say hi and ask a few questions and I have to say the community really does have great vibes. If I were spending more time online, I would likely bias to spending it in the gleam community. They're a bunch of very friendly, and smart people working on a wide variety of interesting projects.

Re: Gleam v1.12

#36

The official website has an interesting footer > As a community, we want to be friendly too. People from around the world, of all backgrounds, genders, and experience levels are welcome and respected equally. See our community code of conduct for more. Black lives matter. Trans rights are human rights. No nazi bullsh*t. On one hand I applaud that their community standards are inclusive, but on the other hand, it shou…

> Shouldn't be that blatantly ideological, it's not a political platform Yeah! This always stands out like a sore thumb on the website. Like _yeah_, all of it should go without saying! You're a freely available programming language, of course everyone can use it! Of course everyone is welcome! Does a hammer care about your gender or race? No, anyone can use it! It's also very weird and a little childish to specifical…

> Isn't it obvious that "nazi bullshit" isn't welcome? Like a no-brainer?

Unfortunately, not in this day and age.

> Why does a programming language feel the need to say this?

It's less about "the language saying it" and more about the standards of the community that surrounds the language.

For a language to thrive, it needs a community of people contributing to it. If it doesn't, it'll eventually die unused. As such, there's more than "just the language"; it is also a community-building effort.

> Also, the phrase "nazi bullshit" is severely...

IMHO, you're reading too much into the word "bullshit".

Re: Gleam v1.12

#37

Earlier quoted context omitted.

The Gleam community has been the best, most welcoming community I've ever seen on the internet. And I've been a around for a while. I attribute this in part to their clear stance.

I was welcomed too, and strongly encouraged to contribute. It was really nice. Though the signals might appear abrasive to some, it doesn't represent an abrasive group of people at all.

The good thing is, you don't have to be tolerant with the intolerant. And that's exactly what they are advertising. It let the nice people flow in, as you experienced.

Re: Gleam v1.12

#38
post #2

Some highlights from this release are listed here[1]. The best part of Gleam in my opinion is the language's design. It's just so elegant to read and write. Take this example code snippet from the release notes: pub fn find_book() -> Result(Book, LibraryError) { case ask_for_isbn() { Error(error) -> Error(error) Ok(isbn) -> load_book(isbn) } } It's a trivial code snippet, but I'm finding this kind of "first class" pa…

Error(error) -> Error(error) has strong if err != nil { return err; } vibes, and I don't consider that a good thing.

No, it doesn't have strong if err != nil { return err; } vibes.

Pattern matching on Ok/Error is one of the best known error handling, while go error handling is one of the worst. They are about as far from each other as possible.

Re: Gleam v1.12

#39
post #2

Some highlights from this release are listed here[1]. The best part of Gleam in my opinion is the language's design. It's just so elegant to read and write. Take this example code snippet from the release notes: pub fn find_book() -> Result(Book, LibraryError) { case ask_for_isbn() { Error(error) -> Error(error) Ok(isbn) -> load_book(isbn) } } It's a trivial code snippet, but I'm finding this kind of "first class" pa…

>It's just so elegant to read and write. Interesting. I was just about to write the opposite. I tried Gleam to solve last year's Advent of Code, and it felt like a weird mix between Rust and Elixir. You can't write code as elegantly as you'd do in Elixir, which was somewhat disappointing. I switched back to Elixir after a couple of days. I think the biggest advantage of Gleam is static type system.

I prefer Elixir's syntax over Gleam's, but my main issue with Gleam is architectural. Specifically, Gleam had to bastardize BEAM and OTP to implement static typing. To me, static typing vs. dynamic typing is like having a shelf with a doily vs. one without a doily (the shelf works fine either way), so messing up a solid Actor Model implementation, for instance, for the sake of static typing seems like the wrong thing to do.

Re: Gleam v1.12

#40
post #20

Earlier quoted context omitted.

Error(error) -> Error(error) has strong if err != nil { return err; } vibes, and I don't consider that a good thing.

This is a trivial snippet. Often you will transform/map your error into another type (or deal with it in some way), so it's not so much `if err != nil { return err; }` vibes like you're thinking here. The beauty here is being compelled to handle both the happy and sad paths. You cannot just pretend the sad path doesn't exist.

Good Go code also wraps errors...
Post reply on HN