Inference-based support for programming in the large

  • Gregor Snelting
  • Franz-Josef Grosch
  • Ulrik Schroeder
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 550)


We present interactive support tools for programming in the large which can handle incomplete, missing or inconsistent information about a software project. Our tool set comprises an incremental interface checker for incomplete component libraries, support for polymorphic component reuse, an inference-based interactive configuration system, and browsing algorithms based on usage patterns. We make heavy use of automated deduction techniques such as order-sorted unification or AC1 unification. All tools are generic and parameterized with language-specific information. The concepts described in this paper are currently under development as part of an interactive software development environment, which can automatically complete partial information and detect errors earlier than conventional tools.


software development environment interface checking component reuse pattern- based browsing configuration management automated deduction 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [BS86]
    Bahlke, R. and Snelting, G.: The PSG System: From Formal Language Definitions to Interactive Programming Environments. ACM TOPLAS 8, 4 (October 1986), pp. 547–576.Google Scholar
  2. [CK87]
    Collberg, C.S. and Krampell, M.G.: A Property-Based Method for Selecting among Multiple Implementations of Modules. Proc. ESEC 87, LNCS 289, pp. 193–201.Google Scholar
  3. [E189]
    Elzer, P.: Management von Softwareprojekten. Informatik Spektrum 12, 4 (August 1989), pp. 181–197.Google Scholar
  4. [EW87]
    Embley, D.W. and Woodfield, S.N.: A Knowledge Structure for Reusing Abstract Data Types. Proc. 9th Intern. Conference on Software Engineering, IEEE 1987.Google Scholar
  5. [En88]
    Endres, A.: Software-Wiederverwendung: Ziele, Wege und Erfahrungen. Informatik Spektrum 11, 2 (April 1988), pp. 85–95.Google Scholar
  6. [Est88]
    Estublier, J.: Configuration Managment. Proc. International Workshop on Software Version and Variant Control, Grassau 1988.Google Scholar
  7. [Fa84]
    Fages, F.: Associative-Commutative Unification. Proc. 7th CADE, 1984, LNCS 170, pp. 194–208.Google Scholar
  8. [Fe79]
    Feldmann, S. L: Make — A program for maintaining computer programs. Software Practice and Experience, Vol. 9, April 1979.Google Scholar
  9. [ML88]
    Mahler A. and Lampen, A.: An Integrated Toolset for Engineering Software Configurations. Proc. Practical Software Engineering Environments, SIGPLAN Notices 24, 2 (February 1989).Google Scholar
  10. [Na89]
    Nagl, M.: Eine integrierte Softwareentwicklungsumgebung — ein alternativer konzeptioneller Ansatz. Proc. Software Entwicklung, Marburg 1989, Informatik Fachberichte 212, pp. 21–42.Google Scholar
  11. [Pf86]
    Pfreundschuh, M.: A Model for Building Modular Systems Based on Attribute Grammars. PhD thesis, University of Iowa, Dept of Computer Science, 1986.Google Scholar
  12. [Ti85]
    Tichy, W. F.: RCS — A System for Version Control. Software Practice and Experience 15, 7 (Juli 1985), pp. 637–654.Google Scholar
  13. [RT89]
    Runciman, C. and Toyn, I.: Retrieving Re-usable Software Components by Polymorphic Type. Proc. Functional Languages and Computer Architecture, ACM 1989, pp. 166–173.Google Scholar
  14. [Ri89]
    Rittri, M.: Using Types as Search Keys in Function Libraries. Proc. Functional Languages and Computer Architecture, ACM 1989, pp. 174–183.Google Scholar
  15. [Sch89]
    Schroeder, U.: Incremental Variant Control. Proc. 2nd International Workshop on Software Version and Variant Control, Princeton 1989, pp. 145–148.Google Scholar
  16. [Sn89]
    Snelting, G.: The Calculus of Context Relations. ACTA INFORMATICA Vol. 28 (May 1991), pp. 411–445.Google Scholar
  17. [WS88]
    Winkler, J. and Stoffel, Ch.: Program-Variations-in-the-Small. Proc. 1st International Workshop on Software Version and Variant Control, Grassau 1988, pp. 1–20.Google Scholar
  18. [ZW89]
    Zimbel, R. and Weber, P.: Ein Expertensystem zur Auswahl von wiederverwendbaren Programmoduln. Informatik Forschung und Entwicklung 4, 4 (1989), pp. 174–192.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1991

Authors and Affiliations

  • Gregor Snelting
    • 1
  • Franz-Josef Grosch
    • 1
  • Ulrik Schroeder
    • 1
  1. 1.Praktische Informatik Technische Hochschule DarmstadtDarmstadt

Personalised recommendations