Not getting lost in translation
summary
Claims a library that preserves std::format compile‑time checking while allowing runtime language choice, replacing Boost.Locale’s per‑call encoding conversions and heap allocations with a small constant front end that stores a stable hash instead of strings. Implementation parses PO/MO files, uses CLDR plural rules and a consteval format-string constructor to validate formats and argument roles at compile time, embeds MO bytes as embedded MO bytes, and runs million‑step compile‑time integration tests — and it works.
AI-written summary · about
chapters (15)
- 0:00Translation in computing
- 3:24Axle inspection machine story
- 4:30Boost Format strings
- 5:35Beyond German support
- 8:50Gettext message catalogs
- 14:57Unicode plural forms
- 17:52Boost Locale overhead
- 19:40Switching to fmt library
- 23:42Type metaprogramming costs
- 27:31C++20 std::format
- 35:29Compile-time translation in VS2022
- 43:52Type list operations for translations
- 53:04Compile-time translation tests
- 59:18Standardized translation future
- 1:00:02Q&A
related talks
01h 02mZen and the Art of Code Lifecycle Maintenance
04mA Fool's Consistency
01h 09mPlenary: Coping With Other People's C++ Code
01h 29m“Simplicity: Not Just For Beginners”
28mPlayfulness at Work: a Real Serious Messageâ„¢ with Ruby as the Medium
42mLector in Codigo #bbuzz
40mWorst. Ideas. Ever.
33mDon't Hang Me Out To DRY
