Documentation strings, declarations, markup, metadata Lassi Kortela (25 May 2024 10:32 UTC)
Re: Documentation strings, declarations, markup, metadata Lassi Kortela (25 May 2024 10:53 UTC)
Re: Documentation strings, declarations, markup, metadata Antero Mejr (25 May 2024 11:07 UTC)
Re: Documentation strings, declarations, markup, metadata Lassi Kortela (27 May 2024 17:02 UTC)
Re: Documentation strings, declarations, markup, metadata Jens Axel Søgaard (27 May 2024 17:22 UTC)
Bodies in COND, CASE, WHEN, UNLESS, and DO Sergei Egorov (04 Jun 2024 20:30 UTC)
Re: Bodies in COND, CASE, WHEN, UNLESS, and DO Jakub T. Jankiewicz (05 Jun 2024 18:50 UTC)
Re: Bodies in COND, CASE, WHEN, UNLESS, and DO Arthur A. Gleckler (19 Jun 2024 17:54 UTC)
Re: Bodies in COND, CASE, WHEN, UNLESS, and DO Jakub T. Jankiewicz (19 Jun 2024 20:10 UTC)
Re: Bodies in COND, CASE, WHEN, UNLESS, and DO Jakub T. Jankiewicz (19 Jun 2024 20:21 UTC)
Re: Documentation strings, declarations, markup, metadata Lassi Kortela (27 May 2024 20:32 UTC)
Re: Documentation strings, declarations, markup, metadata Jakub T. Jankiewicz (27 May 2024 21:41 UTC)
Re: Documentation strings, declarations, markup, metadata Jakub T. Jankiewicz (25 May 2024 11:51 UTC)
Re: Documentation strings, declarations, markup, metadata Jakub T. Jankiewicz (25 May 2024 12:02 UTC)
Re: Documentation strings, declarations, markup, metadata Lassi Kortela (27 May 2024 17:21 UTC)

Re: Documentation strings, declarations, markup, metadata Lassi Kortela 27 May 2024 17:21 UTC

> Why not use normal string that will be simple to implement and put special
> syntax inside the string as part of the markup that tools that generate
> documentation will understand like:
>
> "#!markdown
>
>   # Title
>
>   Paragraph"
>
> With this when new documentation language will be create there will be no
> need to change the Scheme interpreter to support it. Scheme code will be the
> same only the tool will change. When some tool will support LaTeX you only
> need:
>
> "#!latext
>
> \section*{This is the title}
>
>   Paragraph"
>
> The tool that generate documentation can even allow to write plugins for
> those markup languages, so the tool also could stay the same and person that
> write documentation for new Scheme that he just created can invent his own
> markup languages and plug into the tool.

You can already do that. The problem is that the convention is implicit
in the inner contents of the string, not an explicit part of the outer
S-expressions. That may be fine for one application, but it does not
scale well to an entire programming language.

It makes sense for a program to say (parse-markdown "# Foo"). What the
programming language can add is something like #markup(markdown "# Foo")
which names the markup language in a standard way. All #markup datums in
source code are clearly differentiated from structureless strings, and
can be used anywhere where markup is useful, not only in documentation.