Live data from Hacker News

Rhombus Language 1.0

blog.racket-lang.org

11–20 of 115 posts

Re: Rhombus Language 1.0

#11

I’ve written a little library Rhombus. I think my favorite thing is the `…` operator. Go check it out. It’s not like the splat operator in other languages, though it does give that feel initially. It’s much more general: it works with nested data structures and can take the place of a `map` operation. The best part of `…` is that it is not a built-in thing —it’s just a macro! The magic is that Rhombus lets you define…

> I say this after researching and comparing detailed metaprogramming features across a dozen different languages.

I’m very interested in this. What was your research approach? Are there resources you can recommend beyond the documentation for individual languages?

Re: Rhombus Language 1.0

#12
post #4

Earlier quoted context omitted.

Racket is already approachable and easy to use for everyday purposes

A lot of people hate sexprs. Even seemingly reasonable folks. I imagined they have met students that really struggle with the syntax, while grokking the concepts easily. I myself have heard "the parentheses are hard to balance" and "after a while you dont even see the parentheses" enough times that I think maybe both can be correct.

My editor balances my parentheses (Emacs Paredit). I rarely think about them. I just think structurally and the editor manages the details.

Re: Rhombus Language 1.0

#14

I’ve written a little library Rhombus. I think my favorite thing is the `…` operator. Go check it out. It’s not like the splat operator in other languages, though it does give that feel initially. It’s much more general: it works with nested data structures and can take the place of a `map` operation. The best part of `…` is that it is not a built-in thing —it’s just a macro! The magic is that Rhombus lets you define…

> I say this after researching and comparing detailed metaprogramming features across a dozen different languages. I’m very interested in this. What was your research approach? Are there resources you can recommend beyond the documentation for individual languages?

Here's the paper I wrote: https://lambdaland.org/files/2024_ecoop_type_tailoring.pdf

Lots and lots of documentation, some experimentation, and asking people. :)

Re: Rhombus Language 1.0

#17
post #4

Earlier quoted context omitted.

Racket is already approachable and easy to use for everyday purposes

A lot of people hate sexprs. Even seemingly reasonable folks. I imagined they have met students that really struggle with the syntax, while grokking the concepts easily. I myself have heard "the parentheses are hard to balance" and "after a while you dont even see the parentheses" enough times that I think maybe both can be correct.

> A lot of people hate sexprs

In all my time I have never come across a single Lisper, neither in person nor online, and I know far more than a few dozens, who once grokked the REPL-driven workflow and the structural editing idioms only to later, for whatever reason, suddenly start disliking or even hating s-expressions.

All that so-called "hatred" stems from unfamiliarity. People fuss about Lisps lacking static types, without a single clue about how a "true" REPL trades them off for something different. They compare it to a Python or C# REPL and think "it ain't a big deal". Well, the Lisp REPL is quite different, and yes, a major deal - every single part of the Read-Eval-Print-Loop differs. They complain about "hard to deal with parentheses" and "I can't refactor without types" while having no clue how amazingly nice structural editing is in practice, that you never even think about parens - you only see structure, order and reason.

Re: Rhombus Language 1.0

#18

Rhombus is designed to be * approachable and easy to use for everyday purposes, with a readable indentation syntax; and * uniquely customisable with an _open-compiler API_ that is accessible to a wide audience.

Racket is already approachable and easy to use for everyday purposes

For you, perhaps. I've never been able to get into lisp style sexpr syntax languages :'(

Re: Rhombus Language 1.0

#19
post #4

Earlier quoted context omitted.

A lot of people hate sexprs. Even seemingly reasonable folks. I imagined they have met students that really struggle with the syntax, while grokking the concepts easily. I myself have heard "the parentheses are hard to balance" and "after a while you dont even see the parentheses" enough times that I think maybe both can be correct.

> A lot of people hate sexprs In all my time I have never come across a single Lisper, neither in person nor online, and I know far more than a few dozens, who once grokked the REPL-driven workflow and the structural editing idioms only to later, for whatever reason, suddenly start disliking or even hating s-expressions. All that so-called "hatred" stems from unfamiliarity. People fuss about Lisps lacking static type…

well, i guess i know what the grandparent was talking about when they said 'I myself have heard [...] "after a while you dont even see the parentheses" enough times [...]'. Thanks for the example.

Re: Rhombus Language 1.0

#20
post #6

Rhombus is designed to be * approachable and easy to use for everyday purposes, with a readable indentation syntax; and * uniquely customisable with an _open-compiler API_ that is accessible to a wide audience.

Adding significant whitespace to a new language feels like a bad choice. It's not terrible but I do think it was a bad call for Python in hindsight.

Massive fail. I dread having to move code around my F# codebase.
Post reply on HN