•All together increases
efficiency of program development, program maintenance,
and program execution.
•The more complex the task, the
more perspicuous and reliable must be the tools
•If problem is complex, do not
add further, home-made complexity through tools
•Can a simple language be powerful?
•Can flexibility be achieved
without sacrificing efficiency (or vice versa)?