Most computer users are familiar with the problems of sharing software
with others, and the transfer of programs from one computing environment
to another. Software represents an ever-increasing proportion of the
cost of computing and these costs tend to nullify all the economic
advantages flowing from the wider availability of cheap hardware. Years
ago it was hoped that the widespread use of high-level programming
languages would help in alleviating the problems of software production,
by increasing productivity and by making it simpler for users with
similar problems to be able to use the same programs, possibly on
different types of machines. It is a common experience that in practice
this simple optimism has proved to be unfounded. It was these
considerations which led us in 1979 to organize a two-week course on
"Programming for Software Sharing" at the European Community Joint
Research Centre, Ispra Establishment (Italy), forming part of the
regular series of "Ispra Courses". With prominent invited lecturers,
local contributions and through discussion sessions we examined with an
audience from many countries the problems involved in the sharing and
transfer of software, as well as suggesting ways of overcoming them. In
our local environment we are faced daily with three problems both from
engagements in software exchange in the scientific-technical field on a
Europe-wide or world-wide basis, and from work with programming
techniques and contributions to the international standardization
process.