Live data from Hacker News

A Friendly Introduction to Racket

geometridae.bearblog.dev

21–30 of 195 posts

Re: A Friendly Introduction to Racket

#21
post #11

Much as I am a fan of Racket, this is not a friendly intro. It is a speedrun. When an introduction says “friendly”, I don’t expect it to assume that I know what lambda is. When an introduction says “friendly”, I don’t expect syntax rules to appear in it. At all.

When I see "friendly introduction," I don't expect to see a deadhead sticker front and center. But I guess if you're an actual Deadhead it's not that startling. ;-)

Re: A Friendly Introduction to Racket

#22
post #16

While the language is interesting, sadly, nobody is using it in the wild. Maybe due to cumbersome deployment options? The ability to produce native standalone executables would boost its usage I believe.

Racket has been able to produce standalone executables for a while now.

Re: A Friendly Introduction to Racket

#24
post #16

While the language is interesting, sadly, nobody is using it in the wild. Maybe due to cumbersome deployment options? The ability to produce native standalone executables would boost its usage I believe.

Racket has been able to produce standalone executables for a while now.

I agree. In 2020 we had to manipulate some Moodle files. I wrote the code in Racket and I sent the ".exe" file to my coworkers, that never knew they were using Racket.

Re: A Friendly Introduction to Racket

#25
post #16

While the language is interesting, sadly, nobody is using it in the wild. Maybe due to cumbersome deployment options? The ability to produce native standalone executables would boost its usage I believe.

Racket has been able to produce standalone executables for a while now.

For years, really.

Re: A Friendly Introduction to Racket

#26
post #8

Earlier quoted context omitted.

Homoiconicity.

What makes this a desirable feature? From the perspective where local reasoning is the most desirable property a language can have, how does homoiconicity support that? I honestly am curious. I've seen a few examples presented for it, but they always seem like bad software engineering to me. Where's an example that does something in a cleaner way than alternatives present in other languages while remaining compatible…

Homoiconicity makes writing macros easy.

If you don't like it, you can try https://rhombus-lang.org/ that is build on Racket and also has macros but uses a Python-like syntax.

Re: A Friendly Introduction to Racket

#28
post #11

Much as I am a fan of Racket, this is not a friendly intro. It is a speedrun. When an introduction says “friendly”, I don’t expect it to assume that I know what lambda is. When an introduction says “friendly”, I don’t expect syntax rules to appear in it. At all.

It is rich with information, to the point, and presented in a way that a motivated and competent reader can immediately know something about and be useful with racket. That’s how it was for me anyways; someone who didn’t know anything about racket before reading through this. Wtf kind of intro to a programming language doesn’t include syntax rules? We are all informed, experienced, technologically inclined people her…

> Wtf kind of intro to a programming language doesn’t include syntax rules?

PP could have been more clear and say syntax-rules (note the dash), which means macros. Macros are usually considered an advanced topic.

Re: A Friendly Introduction to Racket

#29
I've been designing my own small language runtime in Rust (VM + JIT + AOT backends) mostly as a way to actually understand tradeoffs compiler authors make instead of just reading about them. Racket's approach to macros and language-oriented programming is one of the things I keep coming back to as a reference curious how much of that flexibility comes at a real runtime cost vs. being mostly a compile-time abstraction.

Re: A Friendly Introduction to Racket

#30
post #11

Much as I am a fan of Racket, this is not a friendly intro. It is a speedrun. When an introduction says “friendly”, I don’t expect it to assume that I know what lambda is. When an introduction says “friendly”, I don’t expect syntax rules to appear in it. At all.

It is rich with information, to the point, and presented in a way that a motivated and competent reader can immediately know something about and be useful with racket. That’s how it was for me anyways; someone who didn’t know anything about racket before reading through this. Wtf kind of intro to a programming language doesn’t include syntax rules? We are all informed, experienced, technologically inclined people her…

> Wtf kind of intro to a programming language doesn’t include syntax rules?

Given that most languages don’t have syntax rules or anything like it, I’m gonna go out on a limb and say that most language introductions/overviews/tutorials don’t mention it.

Post reply on HN