
I think i would enjoy the following syntax: indentation-insensitive grouping using ’{…}’ plus indentation-sensitive grouping starting with ’:’. I think keeping {} grouping is important for one liners, and sometimes for readability too (like big blocks)

Indentation based would always be two more spaces than the line having :, as in Jay’s proposal. I think having a relatively strict syntax is important to ensure consistency across files and even to alleviate the burden of the learner.

Instructions can be separated with ’;’ when placing several ones on the same line.

() would be reserved for function application, even in arithmetic, so that one can still use (+ 4 5 6 7). Grouping of expression would also use {}, e.g. {3 + 5} * (+ 4 5 6)

Thus sexps could still be used everywhere

(or maybe +(4 5 6) if one insists on math notation?)

@robby Will Rhombus be an opportunity to reboot DrRacket too? In particular a new syntax means things might have to be dealt with quite differently. At the same time, rebooting DrRacket seems daunting.

@robby has joined the channel

Gotta start calling it Rhombus…

I was thinking the codename may mean “The four of you play an equal part, but you’re not all equally obtuse” ( :wink: ), but…. you’re 5 :zipper_mouth_face:

We shall see!

I think the current state doesn’t really suggest that rebooting DrRacket would be an integral part, but who knows.

Does DrR need rebooting? It’s pretty flexible, has some great stuff (thank you for Scripts).

IIRC @robby wouldn’t be against a little (big?) bit of refactoring (CMIIW)

I sould add that I moved 2 rhombus issues to drracket, because they were about DrRacket not Rhombus

I’ll assume that any help is welcome.

@laurent.orseau As an experieced DrRacket developer, what is your workflow?
(Mine is terrible, and slow, and it puts me off doing anyhting because I keep waitng for DrR to rebuild and restart)

To hack DrRacket you mean? Well, avoiding restarting was one of the main reasons behind Quickscript ;) Otherwise I try to separate what really needs restarting and the rest.