Syntax for hygienic vs non-hygienic keywords Lassi Kortela 01 Nov 2019 23:33 UTC

>> I had understood that you liked me (not too serious) idea of using colon
>> names for non-hygienic keywords and colon-free names for hygienic
>> keywords.
>
> I love that idea, but at the call site (call/kw).

Just realized it doesn't work with the new keyword call syntax either
that the majority now seems to prefer.

The syntax (call/kw proc 1 2 :foo 3 :bar 4) relies on :foo and :bar
being somehow distinctive symbols.

This doesn't work: (call/kw proc 1 2 foo 3 bar 4). We can't make the
syntax so strict that it interprets *any* symbol whatsoever like a
keyword. That would confuse people for sure. Then we'd have to go back
to the original (call/kw proc 1 2 (foo 3 bar 4)) syntax.

Here too we could do something like (call/kw proc 1 2 (keyword foo) 3
(keyword bar) 4) but probably no programmer would want to use an
interface so verbose?