On Fri, Sep 24, 2021 at 1:49 PM Jay McCarthy <[email protected]> wrote:
> I think the word you're looking for is "syntax". Many people think that > languages like Racket "don't have syntax" or "have uniform syntax", but > this is an example of how that is incorrect. Each macro has its own unique > syntax and this is an example of how `let` has a unique syntax where `(` > does _not_ mean "apply a function" or "apply a macro". > > As a poor analogy, many human languages have a wide set of phonemes and > you combine those in certain rules (like you can't have 27 consonant sounds > in a row) and then use them in wider situations that we call grammar. I > like to think that languages like C has lots of phonemes and little > grammar, because there are lots of rules about how to form "C words" but > basically no rules for how to form "C sentences", because there's a lot of > uniformity in how expressions and statements combine. In contrast, > languages like Racket have very few phonemes (this is what I think people > mean why they say "there is no syntax") but many varied rules (in fact, > arbitrary, because macros can customize them) for combining those smaller > units. > So there's no specific term for this structure? I was looking for a standardized way to say something like "with-handlers accepts a group of two-element groups where each subgroup consists of a predicate and an action." > > Jay > > -- > Jay McCarthy > Associate Professor @ CS @ UMass Lowell > http://jeapostrophe.github.io > Vincit qui se vincit. > > > On Fri, Sep 24, 2021 at 1:25 PM David Storrs <[email protected]> > wrote: > >> Racket has a number of forms that include what look like lists of lists >> but are not. For example: (let ((foo 7) (bar 8)) ...) >> >> What would the '(foo 7)' and '(bar 8)' elements be called? Groups, maybe? >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Racket Users" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/racket-users/CAE8gKodX800fK45c_dyVFCNB-AKmYmK26DxC42ZRDVHdzJ2Q7g%40mail.gmail.com >> <https://groups.google.com/d/msgid/racket-users/CAE8gKodX800fK45c_dyVFCNB-AKmYmK26DxC42ZRDVHdzJ2Q7g%40mail.gmail.com?utm_medium=email&utm_source=footer> >> . >> > -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/CAE8gKoeM6YYgpj-4Ey%2BoSSKRS%2BfMch3d0GDu85f9mwHmtxwVig%40mail.gmail.com.

