[developers] More TDL cobwebs

goodman.m.w at gmail.com goodman.m.w at gmail.com
Fri Sep 7 01:29:23 CEST 2018


Hi all,

There are some remaining issues with TDL that I'd like to clean up. First I
will summarize some decisions made (or at least not rejected) in previous
email threads:

1. Supertypes appear before other terms in a conjunction only by convention
(not enforced in the syntax)
2. Docstrings are triple-quoted and may appear before any top-level term or
before the final . terminator
3. Comments may appear in definitions anywhere that spaces can, except
within strings/regexes/affixing-patterns

The following changes are things I think people agree with, so I'd like to
consider them as decided:

4. Removal of the :< operator (if accepted as a variant of :=, throw a
warning)
5. Removal of 'single-quoted-symbols
6. Removal of double-quoted "docstrings"
7. Removal of non-regex uses of ^ (otherwise any BNF of TDL is necessarily
incomplete because the "extended-syntax" use of ^ is open-ended)

And there's at least one point I don't think we reached a decision on:

8. Instances must have exactly 1 "supertype" (which is really just a type
and not a supertype, i.e., it doesn't change the type hierarchy)

Also:

9. Does anyone know how wild-cards differ from letter-sets? I see HaG has a
wild-card and suffix pattern like these:

    %(wild-card (?g ui))
    ...
    %suffix (!c!v !c!vn) (!v?g !vn)
My guess is that wild-cards match but are not used in the replacement,
which I can imagine is useful if you want the replacement to use the second
of two matches but not the first. It makes me wonder why we don't just use
regex substitutions for these things.

If nobody responds about (1)--(7), I'll make sure the syntax description on
the TdlRfc wiki reflects those decisions.

-- 
-Michael Wayne Goodman
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.delph-in.net/archives/developers/attachments/20180906/f6542619/attachment.html>


More information about the developers mailing list