ABSTRACT

Portions of the user interface community suggest that if the user interface specification tools are designed perfectly, then quite naive users could specify the majority of their programs without using any programming language at all. While this is a laudable goal, and it would be a very happy world if this idea could indeed bear fruit, the fact of the matter is that specifications of even very simple user interfaces themselves, let alone more complex program semantics, will always require the full power of a programming language. This chapter demonstrates this point by setting a very simple interface problem and observing that all of the salient features of a full programming language are necessarily required in order to specify it. But all is not lost-by taking the opposite tack, and growing programming notation towards visual user interface specification rather than the other way around, we can achieve most of the advantages of the original dream. This point we demonstrate by using the visual programming language GVL [Cordy 90] to specify the example interface.