On Mon, Jul 24, 2017 at 11:15 PM, Panicz Maciej Godek <xxxxxx@gmail.com> wrote:

That said, I think you could point to some examples of unorthogonal features
that are already present in Scheme  -- for example, the named-let loops, or the
"=>" syntax in the "cond" clauses, or even the "else" keyword of the "cond"
clauses

Don't take me that I'm forcing orthogonality as a dogma.  It's just a rule of thumb when there aren't other compelling reasons to do otherwise.  The srfi text in the current form isn't clear enough on such reasons (it does mention indirectly, when it says some of most common usage of cut is to specialize one of the arguments of binary predicates, under "SRFI 26 Notation for Specializing Parameters Without Currying".  You can put the usage frequency argument earlier.)


I think this idea is similar to infix definitions that I consciously rejected in SRFI-156.
Making a penetrating non-compatible change in the existing language and practices
is something that I prefer to avoid.

It is not non-compatible.  It's a backward-compatible extension, for (cut is ...) is not allowed in the original srfi-26 (unless there's an implementation that extends srfi-26 in its own way to give (cut <syntactic-keyword> ...) a special meaning.)

In case if you don't like '<>' as the placeholder, you can delve into yet another sectioning syntax, e.g. Clojure-esque #(is _ < x) etc.  In that case, however, I feel it is better to have a separate srfi.

Actually, I prefer not to propose any additional reader syntax when this isn't strictly necessary.
I also understand the reluctance of replacing <> with _. I am myself not a huge fan of SRFI-26,
and my worry is that <> has had a definite and sensible meaning outside of the Scheme community
long before SRFI-26 was announced. The thing with underscore is that it is never likely to have
any definite meaning -- it may refer to something that is ignored or omitted (syntax-rules, for example,
use it in the former case, and SRFI-156 -- in the latter). Since the conflict between ignoring and
omitting is rather unlikely, I believe this is the right choice.
 
By "syntax" I didn't specifically mean reader syntax, but also another layer of macro.  In srfi-26 discussion, for example, '&' or '_j' were suggested, e.g. (& is _ < x).   (Actually, using _ instead of <> was also discussed.)
The good thing to have such syntax is that now if you prefer _ to <>, you can go with this new syntax without being limited to 'is' macro.  Coupling the sectioning notation with infix macro actually restricts the sectioning notation into special occasions.  Again, if you have compelling reasons to do so, it's ok.  I just haven't seen them yet.