Overview
Explore embedded domain-specific languages (EDSLs) for embedded bare metal projects in this comprehensive conference talk from C++Now 2019. Delve into the benefits of EDSLs, their resource costs, and techniques for implementation in embedded systems. Learn about declarative abstractions, program optimization, and the challenges of limited ROM and stack space. Discover open-source libraries used in embedded projects and follow the development of a basic filter computation EDSL. Gain insights into improving code abstractions, understanding the cost of competing techniques, and leveraging C++14 and C++17 features for embedded development. Whether working on small embedded systems or seeking to enhance EDSL knowledge, acquire valuable tools and techniques to elevate your programming skills.
Syllabus
Introduction
Why we cant have nice things
Optimizations
Bloat
Algorithm
Complex
East vs West
Why use C
declarative thinking
value
undo declared
type system
the idea
why
single stage
switch statements
Embedded
State Machines
BoostSML
Hierarchical State Machines
SML
Protocols
parsing
peg
date
match
Slack
Dragons
Warning
Filter Type Structures
Identity
Pipe
Argument Dependent Lookup
T taint
Conclusion
Export
Size
Constants
UDL
Delays
Printer
Delay
Cobble Operator
Static assert
Feedback branching
Fork
Fork empal
Fork tuple
Taught by
CppNow