IF-IMPLEMENTS restricted to top-level? Sergei Egorov 08 Jan 2099 04:39 UTC

I have a suggestion to restrict IF-IMPLEMENTS to top-level of a <program>
thus making it illegal to bury it deep inside program text. This will force
programmers to separate system-dependent code by building their
own portable abstractions in a form of macros or procedures instead
of just patching the program to make it work on a new system. I would
like to be able to see all the system dependencies right away, as
soon as I open the file; this is why I also prefer longer, easier to
spot name like %%if-scheme-system-implements.

Top-level is defined recursively: any form within sequence of
nested BEGIN, IF-IMPLEMENTS, LET-SYNTAX and LETREC-SYNTAX
is also on a top level, so all examples using nested IF-IMPLEMENTS
work as intended...

BTW, how am I supposed to write IF-IMPLEMENTS to be able to
check whether a certain system is case-sensitive? Are both
if-implements and IF-IMPLEMENTS ok for this purpose?

Sergei Egorov