Hi Matthias, (or anyone else who is available to answer :)) I'm trying to get my head around the range of possible languages in Racket.
You got me thinking how many languages seem to have embedded little languages. I was wondering how they fit into your categories of languages? 3. The nature of languages ranges from > — stand-alone languages with ugly syntax (example: datalog) > — #lang stand-alone DSLs (config, scribble) > Does '#lang <https://docs.racket-lang.org/guide/Module_Syntax.html#%28part._hash-lang%29> video' fit in this group? — #lang language mixins (s-expr, 2d) > Do regular #px""/#rx expressions fit in this category? — embedded DSLs with mostly coarse-grained interactions with Racket > (redex) > would racket/class fit in this group? would (require <https://docs.racket-lang.org/reference/require.html#%28form._%28%28lib._racket%2Fprivate%2Fbase..rkt%29._require%29%29> sql <https://docs.racket-lang.org/sql/>) fit in this group? — embedded DSLs with fine-grained interaction with Racket (the > language of class syntax; syntax-parse: the pattern and templated > languages, which interact via syn-pattern vars) > Do regular #px""/#rx expressions fit in this category? > All of these are available via libraries. And I am almost sure I > am forgetting some classes of languages here. Kind regards, Stephen PS I need to add minipascal to https://github.com/racket/racket-lang-org/pull/89 On Sat, Feb 23, 2019 at 11:08 PM Matthias Felleisen <[email protected]> wrote: > > > The ycombinator post shows so many misunderstandings of the basic issue, > it’s seriously sad. Here are some: > > 1. S-expression syntax does not mean it’s the same semantics. > 2. The means of implementation in Racket are radically different from a > lexer-parser approach. > 3. The nature of languages ranges from > — stand-alone languages with ugly syntax (example: datalog) > — #lang stand-alone DSLs (config, scribble) > — #lang language mixins (s-expr, 2d) > — embedded DSLs with mostly coarse-grained interactions with > Racket (redex) > — embedded DSLs with fine-grained interaction with Racket (the > language of class syntax; syntax-parse: the pattern and templated > languages, which interact via syn-pattern vars) > All of these are available via libraries. And I am almost sure I > am forgetting some classes of languages here. > > I suspect that if we collected the languages in just these categories, > we’d easily find over a hundred if not several hundred in both our code > base as well as external code repos. > > Thanks for taking up the battle against this lack of knowledge out there — > Matthias > > > > > > -- 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]. For more options, visit https://groups.google.com/d/optout.

