Název:
Implementace součtového datového typu v C++
Překlad názvu:
Implementation of Sum Data Type in C++
Autoři:
Novák, Samuel Matyáš ; Roupec, Jan (oponent) ; Matoušek, Radomil (vedoucí práce) Typ dokumentu: Diplomové práce
Rok:
2020
Jazyk:
eng
Nakladatel: Vysoké učení technické v Brně. Fakulta strojního inženýrství
Abstrakt: [eng][cze]
Práce se zaobírá problematikou implementace součtového datového typu v jazyce C++. Nejprve navrhuje vlastní abstrakce pro manipulaci s posloupnostmi hodnot a typů, které následně umožňují vyjadřovat komplexní operace deklarativně. V průběhu implementace jsou prezentovány návrhové vzory obvyklé pro oblast metaprogramování. Implementace přichází s rozhodnutími odlišnými od referenční implementace. Pro manipulaci se součtovým typem jsou představeny dvě šablony funkce, lišící se sémantikou. Užití součtového typu je ukázano na příkladu konečného stavového automatu.
This work concerns the implementation of a sum data type in C++. First, custom abstractions to handle sequences of values and types are proposed, which later enable complex operations to be expressed declaratively. The implementation presents the design patterns common in metaprogramming. Design decisions different from the reference implementation were made. To manipulate the sum type, two function templates with different semantics are introduced. An example of using the sum type to represent a finite state machine is provided.
Klíčová slova:
algebraic data types; compile-time code generation; data structures; generic programming; polymorphism; sum data types; template metaprogramming; algebraické datové typy; datové struktury; generické programování; generování kódu při kompilaci; polymorfismus; součtové datové typy; šablonové metaprogramování
Instituce: Vysoké učení technické v Brně
(web)
Informace o dostupnosti dokumentu:
Plný text je dostupný v Digitální knihovně VUT. Původní záznam: http://hdl.handle.net/11012/191876