Skip to main content

Advertisement

Log in

A Transportable Programming Language (TPL) System. I. overview

  • Published:
International Journal of Computer & Information Sciences Aims and scope Submit manuscript

Abstract

A Transportable Programming Language, TPL, is defined as one that can be used to codeany program that will compile and correctly execute onany machine in a designated range. The range specifies only the minimum software and hardware needed to support the TPL. A HLL-TPL System is one that, in addition to supporting the TPL, can be used to transport any program coded in a dialect of the High-Level Language, HLL, so that it will compile and correctly execute on any machine in a designated range.

Methods of implementing a HLL-TPL System are reviewed and it is demonstrated that theSuperset Method, in which the Hypothetical Parent of the HLL (HPHLL) acts as the intermediate language between the dialects of a HLL, leads to a fully transportable High-Level Language—the HPHLL—whose only parameters are: The amount of memory available; and the maximum module size exclusive of arrays. The ongoing work to realize a production version of the FORTRAN-TPL system is described. Its essential characteristic is a fully transportable bifunctional FORTRAN-TPL compiler that converts a dialect of FORTRAN to the intermediate language, HPFORTRAN, and visa-versa.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. P. A. D. de Maine and C. G. Davis, Specification for a Transportable Programming Language System,Proc. COMPSAC, p. 486–494 (1982).

  2. P. A. D. de Maine and C. G. Davis, JOBLIST-A General Data-Structure for Communicating, Manipulating and Managing Information in a Distributed Environment,Proc. Third Int. Conf. on Distributed Comp. Sys., p. 98–103 (1982).

  3. H. F. Legard, ADA: An Introduction and the ADA Reference Manual, Springer-Verlag, New York, 356 pp. (1981); Collection of ADA papers in: Proc. of the ACM SIGPLAN Symposium on the ADA Programming Language, ACM SIGPLAN Notices,15(11) (1980).

    Google Scholar 

  4. R. J. Munn and J. M. Stewart, RATMAC-A Preprocessor for Writing Portable Scientific Software,Software-Practice and Experience,10:743–749 (1980).

    Google Scholar 

  5. W. T. Wyatt, Jr., D. W. Lozier, and D. J. Orser, A Portable Extended Precision Arithmetic Package and Library with FORTRAN Precompiler,ACM Trans. on Math. Software,2:209–231 (1976).

    Google Scholar 

  6. G. S. Tsiang, D. C. Peterson and J. F. Price, FORTRAN Language Standardization Study, Tech. Rep. D180-14266-1, Boeing Co., Seattle, Washington (1972); J. R. Wolberg, Comparing the Cost of Software Conversion to Cost of Programming,ACM SIGPLAN Notices,16(4):104–110 (1981).

    Google Scholar 

  7. S. Leong, H. Mehrooz, P. A. D, de Maine, and C. G. Davis, Methods for Transporting Programs,Proc. COMPSAC, p. 49–59 (1983).

  8. B. G. Ryder, The PFORT Verifier,Software-Practice and Experience,4:359–377 (1974); B. G. Ryder, The FORTRAN Verifier, Users Guide, Computing Sci. Tech. Rep. 12, Bell Telephone Laboratories, Murray Hill, New Jersey (1973).

    Google Scholar 

  9. T. J. Aird, E. L. Battiste, and W. C. Gregory, Portability of Mathematical Software Coded in FORTRAN,ACM Trans. on Math. Software,3:113–117 (1977).

    Google Scholar 

  10. P. J. Brown, Macro Processors and Techniques for Portable Systems, John Wiley and Sons, New York (1974); P. J. Brown, Writing Interactive Compilers and Interpreters, John Wiley and Sons, New York (1979).

    Google Scholar 

  11. M. C. Newey, P. C. Poole, and M. W. Waite, Abstract Machine Modelling to Produce Portable Software-A Review and Evaluation,Software-Practice and Experience,2:107–136 (1972).

    Google Scholar 

  12. O. Lecarme and M. C. Peyrolle-Thomas, Self-Compiling Compilers: An Appraisal of their Implementation and Portability,Software-Practice and Experience,8:149–170 (1978).

    Google Scholar 

  13. D. E. Whitten and P. A. D. de Maine, A Machine and Configuration Independent FORTRAN: Portable FORTRAN (PFORTRAN),IEEE Trans. on Software Eng.,SE-1: 111–124 (1975).

    Google Scholar 

  14. J. W. Goodwin, Why Programming Environments Need Dynamic Data-Types,IEEE Trans. on Software Eng.,SE-7:451–457 (1981).

    Google Scholar 

  15. D. E. Whitten and P. A. D. de Maine, Operations and Logic Manual for Portable FORTRAN (PFORTRAN), Report 1 of the Series: Global Management Systems, Computer Science Dept, Pennsylvania State University, University Park, Pennsylvania (1975).

    Google Scholar 

  16. D. E. Whitten and P. A. D. de Maine, The TPL Programming Language, Report 2 of the Series: Global Management Systems, Computer Science Dept., Pennsylvania State University, University Park, Pennsylvania (1976).

    Google Scholar 

  17. P. A. D. de Maine, A Programming Language for Networks,Data Comm.,10:70–76 (1981).

    Google Scholar 

  18. C. Burgess and L. James, An Indexed Bibliography for LR Grammars and Parser,ACM SIGPLAN Notices,16(8):14–26 (1981).

    Google Scholar 

  19. S. Leong and P. A. D. de Maine, Design of a TPL Compiler System-A System for Transporting High Level Language Programs, Proc. 16th Southeastern Symposium on System Theory, p. 51–57 (1984).

  20. R. G. Cattrell, J. M. Newcomer, and B. W. Leverett, Code Generation in a Machine Independent Compiler,ACM SIGPLAN Notices,14(8):65–75 (1975).

    Google Scholar 

  21. R. Buhler, P-STAT Portability,Proc. Comp. Sci. and Statistics, 8th Ann. Sym. on the Interface, University of California, Los Angeles, p. 165–172 (1975).

    Google Scholar 

  22. D. E. Whitten, Design and Implementation of a Programming System for the Production of Transportable Software, Ph.D. Thesis, Pennsylvania State University, University Park, Pennsylvania (1976).

    Google Scholar 

  23. R. S. Dewar and A. P. McCann, MACRO SPITBOL-A SNOBOL4 Compiler,Software-Practice and Experience,7:95–113 (1977).

    Google Scholar 

  24. R. G. Cattrell, Automatic Derivation of Code Generators from Machine Descriptions,ACM TOPLAS,2:173–190 (1980).

    Google Scholar 

  25. N. Wirth, PL360, A Programming Language for 360 Computers,J. Assoc. Comp. Mach.,15:37–74 (1968).

    Google Scholar 

  26. W. S. Wulf, D. B. Russell, and A. N. Habermann, BLISS-A Language for Systems Programming,Comm. Assoc. Comp. Mach.,14:780–790 (1971).

    Google Scholar 

  27. P. A. D. de Maine and D. E. Whitten, Design for a Distributed Information System,Adv. in Infor. Sys. Sci.,7:89–155 (1978).

    Google Scholar 

  28. M. V. Wilkes, An Experiment with a Self-Compiling Compiler for a Simple List Processing Language,Ann. Rev. of Automatic Programming,4:1–4 (1964).

    Google Scholar 

  29. R. Meeson and A. Pyster, Overhead in FORTRAN Preprocessors,Software-Practice and Experience,9:987–999 (1979).

    Google Scholar 

  30. American National Standard Programming Language FORTRAN, ANSI X 3.9, American Standards Institute, 1430 Broadway, New York, N.Y. 10018 (1978).

  31. B. Colton, The Advanced Flexible Processor, Array Architecture, in Supercomputers in Chemistry, P. Lykos and I. Shavitt (eds), Am. Chem. Soc. Symp. Series, No. 173, Washington, D.C. (1981).

  32. C. R. Vick, S. P. Kartashev and S. J. Kartashev, Adaptable Architectures for Supersystems,IEEE Computer,13:17–36 (1980).

    Google Scholar 

  33. B. W. Kernighan, RATFOR-A Preprocessor for a Rational Fortran,Software-Practice and Experience,3:395–406 (1975).

    Google Scholar 

  34. J. B. Moore and L. J. Makela, Structured FORTRAN with WATFIV, Reston Publishing Co., Inc., Reston, Virginia (1978).

    Google Scholar 

  35. R. Conway and D. Gries, An Introduction to Programming-A Structured Approach Using PL/I and PL/C, Winthrop Publishers Inc., Cambridge, Massachusetts (1979).

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

de Maine, P.A.D., Leong, S. & Davis, C.G. A Transportable Programming Language (TPL) System. I. overview. International Journal of Computer and Information Sciences 14, 161–182 (1985). https://doi.org/10.1007/BF00991004

Download citation

  • Received:

  • Revised:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF00991004

Key words