[comp.lang.fortran] Need for language interface standards

weyrich@ugacs.UUCP (Orville Weyrich) (11/25/88)

In article <395@ubbpc.UUCP> wgh@ubbpc.UUCP (William G. Hutchison) writes:
> However you slice it, COBOL->C conversion still smells like baloney to me!
     ........
> Algol-type languages are neat for certain computer-science stuff, and
> COBOL is OK for routine commercial programs.  
> So why translate?
> Commercial companies cannot hire enough competent programmers to let them
>switch to more "advanced" languages, so, until 4GLs or AI techniques help them
>make do with fewer programmers, they probably should keep using COBOL.
> My point was not that one language is better than another, but that I feel
>it is usually silly to translate programs from a language into another that is
>_very_ different from the first.  Rewrites may well be cheaper!
>-- 
>Bill Hutchison, DP Consultant	rutgers!cbmvax!burdvax!ubbpc!wgh

I think that this discussion points out a neglected aspect of programming
language development and language standardization: defining standard and
useful interfaces *between* languages, so that for example new code in modern
languages can be smoothly integrated into old programs written in old languages
without the need for massive rewrites. 

Some early Pascal compiler writers realized this, and provided a FORTRAN 
reserved word for allowing the Pascal programmer to link in FORTRAN libraries.

DEC demonstrates that this can be done in the VAX/VMS family of programming
languages (although this is a private DEC standard).

It *must* be easier, faster, and more cost-effective to define linkage between
say FORTRAN and Ada than it is to redefine FORTRAN to have most of the features
of Ada (as is being done by the 8X committee).

Of course, such a proposal is not expected to be greeted with a warm welcome
by certain mainframe manufactures who have trouble getting their own standard
linkage conventions standardized :-), or those who have separate and
incompatible runtime libraries for each language :-), or those who do not
have language-independent code generators :-).

The pseudo-issue of the cost of licensing multiple compilers for a single job
shop seems to be easily defeated:
  1) If in order to meet a new language standard, most of the existing
	 compiler must be discarded and rewritten, the user *will* pay royally
	 because it *does* cost the manufacturers big bucks. 

  2) Given that at least some manufacturers have compatible runtime libraries
	 and language-independent code generators for languages like FORTRAN-77
	 and Ada, it would cost very little to conform to new standards which
	 were restricted primarily to elaborating a standard interface between
	 the existing languages.  Manufacturers with this capability would be
	 able to improve their market share by passing on their savings, while
	 certain others would be stuck doing major surgery to get their products
	 working together (comparable in effort to a total rewrite of both
	 language compilers?)  (this looks like a real political hot potato! :-( ).


What does the rest of the net think?

Post followups to comp.lang.misc.

-- 
Orville R. Weyrich, Jr.          | UUCP    : ...gatech!ugacs!csun1!weyrich
Department of Computer Science   |
University of Georgia            |
Athens, GA 30602 USA             | MA BELL : (404) 542-1082