Path: utzoo!utgpu!water!watmath!clyde!bellcore!rutgers!cmcl2!nrl-cmf!ames!amdahl!nsc!taux01!chaim From: chaim@taux01.UUCP (Chaim Bendelac) Newsgroups: comp.arch Subject: Software Distribution Message-ID: <891@taux01.UUCP> Date: 17 Aug 88 17:41:07 GMT Organization: National Semiconductor (Israel) Ltd. Lines: 32 Previous articles (under "Standard Un*x HW"/"Open Systems"/"ABI", etc) have expressed the wish for portability standards. Many organizations are spending tremendous resources to promote such standards. Nothing new there. I wondered, if there is no room for another standard layer, specially designed for software DISTRIBUTION. Imagine an Intermediate Program Representation Standard (IPRS) along the lines of an intermediate language within a compiler. Language independent, architecture independent. The distributor compiles and optimizes his program with his favorite language compiler into its IPR, copies the IPR onto a tape and sells. The buyer uses a variation on 'tar' to unload the tape and to post-process the IPR program with the system-supplied architecture-optimized IPRS-to-binary compiler backend. No need for cumbersome source-distributions, no more different binary copies of the software. Utopia! You introduce a weirdly new, non-compatible architecture? Just supply a Standard Unix (ala X/Open or OSF or whatever), an IPRS-to-binary backend, and you are in business. The Software Crisis is over! :-) ? :-( No free lunch, of course. The programmer still has to write "portable" software, which is a difficult problem. A truly language- and architecture- independent interface is almost as difficult to design as the old "universal assembler" idea. But with enough incentives, perhaps? Questions: 1. How desperate is the need for such a standard? (I know: GNU does not need ISPRs nor ABIs...) 2. Assuming LOTS of need, how practical might this be? 3. What are the main obstacles? Economical? Political? Technical? 4. What are the other advantages or disadvantages?