On Wed, Jul 24, 2019 at 4:16 PM Matthew Butterick <m...@mbtype.com> wrote:

> Support for alternative notation in the documentation system is a missing
> piece in Racket's LOP tooling:
>
> … primary forms like `defproc` assume that the language uses
> S-expressions.
>
> Examples: `#lang datalog` [1] and `#lang lindenmayer` [2].
>

Another, kind of ironic example: `#lang scribble/base` [3]. As it says in
the docs, "Although the procedures are mostly designed to be used from @
mode, they are easier to document in Racket mode (partly because we have
`scribble/manual`)."

But there's also a counter-example, C, as in "Inside: Racket C API."

I have hacked on this a bit for documenting both XML and Python. It is
certainly possible, but it requires too much wading in and replicating the
implementation of `defproc` and friends (especially if you want to try to
work with things like `deftogether`), and I don't know an answer that's as
elegant to write as Scribble for s-expressions. (I also just don't know
another syntax that's as elegant to write as s-expressions, but maybe we'll
find one!) (Some of my efforts for XML are at [5]. My Python attempts
aren't public yet, but hopefully they will be soon.)

[3] https://docs.racket-lang.org/scribble/base.html
[4]
https://docs.racket-lang.org/inside/im_values_types.html#%28cpp._scheme_make_char%29
[5]
https://docs.racket-lang.org/ricoeur-tei-guidelines/The_text_Element.html#%28tei._%28prefixable._text%29%29

-- 
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 racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/CAH3z3gY4J3_bhQB56ZSg5swfwuJOTmh28FHRGKONdrmXprUBow%40mail.gmail.com.

Reply via email to