Martin, I think one thing you need to realize that just being a better idea doesn't make it easy to get implemented. There is a LOT of inertia in infrastructure, and overcoming it can be nearly impossible. A great example of that is look at your typical keyboard, if you were to create a new keyboard now, it is absolutely not how you would want to organize it because it really seems illogical and inefficient. In fact, it was DESIGNED to be inefficient (that was one of its design goals, to slow typesetters down to be slower than the machine they were working on). Why do we still use it? There have been numerous attempts to replace it, and the answer is the inertia of infrastructure. It would cost WAY too much to just scrap all the existing keyboards and replace them with new (both materially and training), and the gains aren't good enough, and the costs still too high to try to phase in a transition. (Not all systems will support the new input method, as there are cost to support it, so demand needs to be proved, but if you still need to keep the skill of using a classical keyboard, a better keyboard isn't going to be that much better, so isn't worth the effort). One big issue in programming is that programmers have gotten use to being able to use a number of different tools for programming (a given programmer doesn't use many, but many are used by different programmers). This is part of the existing infrastructure. This infrastructure is largely based on simple 'ASCII' input. To make a language be based on lots of different characters not on the keyboard, it needs to either restrict the user to a small set of tools that supports the language, or there needs to be a common input method that is available on all the common tools. APL got away with this, because it started out that way, and started before people got used to having a variety of tools. It is also one reason it is relegated to being a niche language. The infrastructure argument basically makes it very hard for an existing language to move from being 'ASCII' based to being symbolic based.