I just pushed an edit of syntax-control.md in which I try to capture the terminology.
Status: several Allegro failures break for me on test-syntax-control. Results from Linux:
build/results/allegro8_64-test.text build/results/allegro8_64_s-test.text build/results/allegromodern8_64-test.text build/results/allegromodern8_64_s-test.text build/results/allegromodern_64-test.text build/results/allegromodern_64_s-test.text
These failures seem to be due to NAMED-READTABLES not working properly on these platforms, rather than on anything ASDF itself does.
Concern: As I was reading over syntax-control.md, it was brought home to me that the ASDF shared syntax is initialized to the *initial syntax* on the host implementation, rather than the standard syntax of ANSI CL. My understanding is that this is done for backwards-compatibility with some QL systems that assume they have access to extended syntax from some implementation(s). I'm concerned that this will create a maintenance headache going forward just so someone *else* can avoid making some minor clean-up. Should we just suck it up and make the shared syntax start out with the initial syntax? Why not break it now, and save ourselves trouble later? Also, it seems like "initial syntax" is not well-defined, even on a single implementation, since ASDF might be loaded at arbitrary times, possibly after modifications to the "initial initial" readtable. Finally, going forward, people will be yelling at *us* if implementations change their initial syntax.
Unless there's a really important reason to keep this, I think we should kill it.