If there is ever a science of programming language design, it will probably consist largely of matching languages to the design methods they support.