• Deutsch
    • English
  • Deutsch 
    • Deutsch
    • English
  • Einloggen
Dokumentanzeige 
  •   Startseite
  • Naturwissenschaften, Mathematik und Informatik
  • Fakultät für Mathematik und Informatik (inkl. GAUSS)
  • Dokumentanzeige
  •   Startseite
  • Naturwissenschaften, Mathematik und Informatik
  • Fakultät für Mathematik und Informatik (inkl. GAUSS)
  • Dokumentanzeige
JavaScript is disabled for your browser. Some features of this site may not work without it.

Multistage Algorithms in C++

Mehrstufige Algorithmen in C++

von Andreas Priesnitz
Dissertation
Datum der mündl. Prüfung:2005-11-02
Erschienen:2006-04-19
Betreuer:Prof. Dr. Gert Lube
Gutachter:Prof. Dr. Robert Schaback
crossref-logoZum Verlinken/Zitieren: http://dx.doi.org/10.53846/goediss-2529

 

 

Dateien

Name:priesnitz.pdf
Size:950.Kb
Format:PDF
Description:Dissertation
ViewOpen

Lizenzbestimmungen:


Zusammenfassung

Englisch

Performance-critical software is rarely implemented in a generic manner. Structural changes usually affect large parts of a project and cause expensive development cycles. Principal reason is the exclusion of efficient, specialized variants when bindings are generalized only to given type sets in favor of static semantical verification and selection. On the other hand, language-based or user-defined means for static evaluation require some according syntax of algorithm implementation and invocation, which hinders their combination.This work overcomes both obstacles by a multi-stage approach: The static and the dynamic content of an algorithm are represented explicitly and separately, where the evaluation of the static stage determines the according dynamic representation. A Turing-complete static language subset as in C++ allows decisions to be arbitrarily complex. As an application, semantical verification and selection of representation are performed by static binding analysis, which avoids explicit restrictions to type sets.
Keywords: multistage programming; generic programming; meta programming; static binding; language embedding

Weitere Sprachen

Leistungskritische Software wird selten in allgemeingültiger Form verfaßt. Strukturelle Änderungen beeinflussen gewöhnlicherweise weite Teile eines Projekts und bedeuten aufwendige Entwicklungsschritte. Hauptgrund ist der Ausschluß effizienter spezialisierter Varianten, wenn zugunsten statischer semantischer Prüfung und Auswahl Bindungen nur auf anzugebende Typmengen verallgemeinert werden. Andererseits verlangen spracheigene oder benutzerdefinierte Mittel zur statischen Auswertung eine entsprechende Syntax bei Bereitstellung und Aufruf von Algorithmen, was deren Kombination erschwert.Die vorliegende Arbeit überwindet beide Hemmnisse durch einen Mehrstufenansatz: Der statische und der dynamische Anteil eines Algorithmus werden explizit und separat dargestellt, wobei die Auswertung der statischen Stufe die geeignete dynamische Darstellung bestimmt. Ein Turing-vollständiger statischer Sprachanteil wie in C++ erlaubt dabei beliebig komplexe Entscheidungen. Als Anwendung werden semantische Prüfung und Auswahl der Darstellung durch statische Analyse einer Bindung vollzogen und so explizite Einschränkungen auf Typmengen vermieden.
Schlagwörter: Mehrstufige Programmierung; Generische Programmierung; Metaprogrammierung; statische Bindung; Spracheinbettung
 

Statistik

Hier veröffentlichen

Blättern

Im gesamten BestandFakultäten & ProgrammeErscheinungsdatumAutorBetreuer & GutachterBetreuerGutachterTitelTypIn dieser FakultätErscheinungsdatumAutorBetreuer & GutachterBetreuerGutachterTitelTyp

Hilfe & Info

Publizieren auf eDissPDF erstellenVertragsbedingungenHäufige Fragen

Kontakt | Impressum | Cookie-Einwilligung | Datenschutzerklärung
eDiss - SUB Göttingen (Zentralbibliothek)
Platz der Göttinger Sieben 1
Mo - Fr 10:00 – 12:00 h


Tel.: +49 (0)551 39-27809 (allg. Fragen)
Tel.: +49 (0)551 39-28655 (Fragen zu open access/Parallelpublikationen)
ediss_AT_sub.uni-goettingen.de
[Bitte ersetzen Sie das "_AT_" durch ein "@", wenn Sie unsere E-Mail-Adressen verwenden.]
Niedersächsische Staats- und Universitätsbibliothek | Georg-August Universität
Bereichsbibliothek Medizin (Nur für Promovierende der Medizinischen Fakultät)
Robert-Koch-Str. 40
Mon – Fri 8:00 – 24:00 h
Sat - Sun 8:00 – 22:00 h
Holidays 10:00 – 20:00 h
Tel.: +49 551 39-8395 (allg. Fragen)
Tel.: +49 (0)551 39-28655 (Fragen zu open access/Parallelpublikationen)
bbmed_AT_sub.uni-goettingen.de
[Bitte ersetzen Sie das "_AT_" durch ein "@", wenn Sie unsere E-Mail-Adressen verwenden.]