Skip to main content

Heterogeneous, Nested STL Containers in C++

  • Conference paper
  • First Online:
Book cover Perspectives of System Informatics (PSI 1999)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1755))

Abstract

The incentive to write a nested, heterogeneous container in C++ surfaced in the SuchThat project [11]. Therein we are working on the implementation of a SuchThat compiler. The first prototype’s back-end [14], as well as many of the other components, were implemented in Scheme [8]. One of Scheme’s main advantages is the powerful list data structure, which can hold arbitrary data types1. This allows the user to build nested lists, e.g. to represent a parse tree or symbol table.

Of course, this holds true for any untyped language.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. ANSI/ ISO Standard: Programming languages-C ++, ISO/IEC 14882, 1998.

    Google Scholar 

  2. Marshall Cline: C ++ FAQ LITE — Frequently Asked Questions, http://www.cerfnet.com/~mpcline/c++-faq-lite.

  3. Cygnus Solutions: egcs project home page, http://egcs.cygnus.com.

  4. Edison Design Group: The C ++ Front End, http://www.edg.com/cpp.html.

  5. Sasha Gontmakher and Ilan Horn: Efficient Memory Allocation, Dr. Dobbs Journal, p. 116–119, January 1999.

    Google Scholar 

  6. IBM: IBM VisualAge C ++, http://www.software.ibm.com/ad/visualage_c++.

  7. D. Kapur and David R. Musser: Tecton: a framework for specifying and verifying generic system components, Rensselaer Polytechnic Institute Computer Science Technical Report 92-20, 1992.

    Google Scholar 

  8. Richard Kelsey, William Clinger, and Jonathan Rees (editors): Revised 5 Report on the Algorithmic Language Scheme, 1998.

    Google Scholar 

  9. David R. Musser, Atul Saini: STL Tutorial and Reference Guide, Addison-Wesley Publishing Company, 1996.

    Google Scholar 

  10. Gor V. Nishanov, Sibylle Schupp: Garbage Collection in Generic Libraries, Proceedings of the International Symposium on Memory Management 1998, p. 86–97, Richard Jones (editor), 1998.

    Google Scholar 

  11. Sibylle Schupp: Generic programming — SuchThat one can build an algebraic library, Ph.D. thesis at the Wilhelm-Schickard-Institut für Informatik, Eberhard-Karls-Universität Tübingen, 1996.

    Google Scholar 

  12. Volker Simonis: Chameleon Objects, or how to write a generic type safe wrapper class, accepted for publication in C++ Report, SIGS Publications, 1999.

    Google Scholar 

  13. David Vandevoorde: C ++ Solutions, Addison-Wesley Publishing Company, 1998.

    Google Scholar 

  14. Roland Weiss: ScmToCpp: a configurable, intelligent back-end for SuchThat, Internal Report at the WSI für Informatik, Universität Tübingen, 1998.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Simonis, V., Weiss, R. (2000). Heterogeneous, Nested STL Containers in C++ . In: Bjøner, D., Broy, M., Zamulin, A.V. (eds) Perspectives of System Informatics. PSI 1999. Lecture Notes in Computer Science, vol 1755. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-46562-6_33

Download citation

  • DOI: https://doi.org/10.1007/3-540-46562-6_33

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-67102-2

  • Online ISBN: 978-3-540-46562-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics