david@ztivax.UUCP (03/07/86)
A more general interface to software tools is needed! Any system should have at least one language with which it is easy (convenient) to build software tools. That is clearly one reason UNIX is so popular. C on UNIX is nice because programs are always loaded with argc and argv on the stack: main(argc,argv). This makes it clearly obvious how to handle command line arguments in a software tool. Now we are seeing the emergence of window/icon/mouse oriented systems. These do not support the paradigm of writing tools using command line arguments in any intuitive fashion. Instead: pop-up menus (I thought pop-ups were cold munchies bought by kids from the ice-cream man), other icons, descreet values, etc are used by the USER to control programs. Somehow, a general interface between these things and the implementing software should be supplied. Right now I am using a Xerox Tajo system which is a super version of the system Apple subsetted to make the Mac. Menus, windows, mouse, symbiote menus, ... Lots of nice stuff. The problem is, the interfaces to all these nice features are via strongly typed libraries. All program interfaces are set at compile time. No way to simply build quicky tools (like using pipelines in UNIX) and still take any advantage of all the gimicks - or any gimicks, for that matter. Yes, you can write a new tool to interact with existing tools fairly easily. But you must compile it that way. Perhaps these interfaces are too complex to ever be used in the same way as pipes in UNIX. However, I think it CAN be done, or else I would not be trying to do it!! Any suggestions??? david smyth seismo!unido!ztivax!david
herndon@umn-cs.UUCP (04/04/86)
I too am concerned about the influx of new "tools". These systems are quite convenient for users, since they are graphic and a user can learn to use them in a matter of hours. For this reason, they are quite powerful, economical, and worthy of a permanent place in the realm of computer arts and sciences. I think, though, that calling the graphic window things "tools" is somewhat misleading. The tool concept is also used to mean (by Kernighan, et. al) to mean simple programs for doing things (like 'grep', 'sort', 'uniq', etc.) and the glue to put these things together (shell, file redirection, pipes, arguments, etc.) to form useful programming tasks. My concern is that the latter concept is being entirely lost. Things such as editor scripts (does anyone remember them?) are now relatively rare, in spite of things like 'sed', ostensibly designed to replace them. Graphic interfaces exacerbate this loss because it discourages users/programmers from thinking of editors/mailers/... as programmable. Aside from 'idioms' such as eqn | tbl | nroff or ... | more how often are interesting pipelines seen nowadays? Robert