A Language for Set-Theoretic Concepts Implemented by Microprogrammed Associative Memory Instructions

  • Josef Grosch
Conference paper
Part of the Informatik-Fachberichte book series (INFORMATIK, volume 53)


Within the research project EGPA a programming language was developed which includes among other things elements for set-theoretic concepts: declarations of the data types SET and SUBSET, the corresponding set- -theoretic operations and some useful intrinsic functions. These language elements are presented here in a PASCAL-like notation. The compilation maps the set-operations and the intrinsic functions into procedure calls, which are the instructions of an abstract “set-machine”. Some details of the implementation of this “set-machine” are discussed For efficient access the sets are stored in a vertical mode in a conventional memory and the set-operations are based on microprogrammed associative memory instructions. The subsets are implemented as bit-vectors. Therefore the subset-operations can use the conventional logical machine instructions and thus are executed fast. In this way all the set-theoretic operations can be implemented efficiently. A special language construct within the intrinsic functions allows the comfortable specification of a subset through conditions. The computation of this subset is evidently an associative operation where we can fully use the capabilities of the microprogrammed associative memory instructions.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    Albert, B., Bode, A., Handler, W.S “A case study in vertical migration: The implementation of a dedicated associative instruction set”, to appear in: Euromicro Journal 12/81, North Holland Publ. Comp.Google Scholar
  2. [2]
    Albert, B., Bode, A., Jacob, R., Kilgenstein, R., Rathke, M.: “Vertiaklverarbeitung: Beschleunigung von Anwenderprogrammen durch mikroprogrammierte Assoziativbefehle”, Hauer, Seeger (Eds.), Hardware für Software, Conference of the German Chapter of the ACM, Konstanz, p. 114–123, Stuttgart: Teubner, 1980Google Scholar
  3. [3]
    Bode, A.: “Probleme der Emulation unkonventioneller Rechnerarchi- tekturen: Pseudoassoziative Verarbeitung im Projekt EGPA”, Proc. GI-NTG-Fachtagung Struktur und Betrieb von Rechensystemen (Kiel, March 1980 ) = Informatik-Fachberichte, Vol. 27, p. 138–148, Berlin: Springer, 1980Google Scholar
  4. [4]
    Händler, W.: “On classification schemes for computer systems in the post-Von-Neumann-era”, Lect. Notes Computer Sc., Vol. 26, p. 439–452, Berlin: Springer, 1975Google Scholar
  5. [5]
    Händler, W., Hofmann, F., Schneider, H.J.: “A General Purpose Array with a Broad Spectrum of Applications”, Workshop of the GI, Computer Architecture, Informatik-Fachberichte, Vol. 4, Berlin: Springer, 1976Google Scholar
  6. [6]
    Jensen, K., Wirth, N.: “PASCAL user manual and report”, New York: Springer, 1978 (2nd ed.)Google Scholar
  7. [7]
    Schneider, H.J.: “Set-theoretic concepts in programming languages and their implementation”, Proc. Workshop on graph-theoretic concepts in computer science, Bad Honnef, 1980Google Scholar
  8. [8]
    Schwartz, J .: “Optimization of very high level languages”, J. Computer Languages 1, 2 (1975), p. 161–194, and 1, 3 (1 975 ), p. 197–218CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1982

Authors and Affiliations

  • Josef Grosch
    • 1
  1. 1.Lehrstuhl für ProgrammiersprachenUniversität Erlangen-NürnbergGermany

Personalised recommendations