Monadic Operations in Modern C++: A Practical ApproachMonadic Operations in Modern C++: A Practical Approach2About me ● Vitaly Fanaskov ● Senior software engineer at reMarkable ● 10+ years of C++ experience ● GIS, VFX, frameworks, and libraries ● Ph (CS) 3Agenda ● Briefly about expected and optional ● Common use cases of expected ● Monadic operations in software development ● Tips and tricks 4In this talk ● Less theory ● C++ only ● Practical a new widget {}: {}.", widgetBox.value(), error); } } 22How do we handle this? 23Monadic operations: and_then if (const auto widgetBox = getNewWidget(); widgetBox.has_value()) { const auto0 码力 | 61 页 | 411.49 KB | 6 月前3
Pipeline Architectures in C++: Overloaded Pipe Operator | and Its Monadic OperationsTitle: Pipeline architectures in C++: overloaded pipe operator | std::expected and its monadic operations Brief overview: Functional programming in C++ is gaining importance and is attracting programmers operator | will be presented, as well as I’ll explain std::expected and especially its monadic operations that can be tricky in practice. All these together present novel and efficient programming paradigms What's more, std::expected itself allows you to build pipelines – this time using its monadic operations. In this poseter I will explain details how to build your own pipeline architecture in modern0 码力 | 3 页 | 422.24 KB | 6 月前3
Back to Basics: The Abstract Machinemachine. The instructions of an abstract machine are tailored to the particular operations required to implement operations of a specific source language or class of languages.” (my emphasis) - Stephan end • There is no room for another language between C++ and the hardware • C++ maps types and operations directly onto hardware • Fundamental C++ types (e.g., char, int, double) map directly into memory directly to hardware addressing capabilities • Modern hardware supports useful arithmetic/logical operations on those entities CppCon 2020 - The Abstract Machine 16Copyright © 2020 Bob Steagall K E W B0 码力 | 91 页 | 538.90 KB | 6 月前3
C++23: An Overview of Almost All New and Updated Featuress() Construct string(_view) From nullptr basic_string::resize_and_overwrite() Monadic Operations for std::optional Stacktrace Library Changes to Ranges Library Changes to Views Library s() Construct string(_view) From nullptr basic_string::resize_and_overwrite() Monadic Operations for std::optional Stacktrace Library Changes to Ranges Library Changes to Views Library s() Construct string(_view) From nullptr basic_string::resize_and_overwrite() Monadic Operations for std::optional Stacktrace Library Changes to Ranges Library Changes to Views Library0 码力 | 105 页 | 759.96 KB | 6 月前3
TiDB v8.5 Documentation· · · · · · · · · · · · · · · · · · · · · 770 5.6.2 Log in to the database and perform simple operations· · · · · · · · · · · · · · · 773 5.7 Test Cluster Performance · · · · · · · · · · · · · · · · transactions? Is there any risk? 1208 7.7.21 Does TiCDC replicate data changes caused by lossy DDL operations to the downstream? · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 1431 8.10 TiUP Common Operations· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 1432 80 码力 | 6730 页 | 111.36 MB | 10 月前3
TiDB v8.4 Documentation· · · · · · · · · · · · · · · · · · · · · 765 5.5.2 Log in to the database and perform simple operations· · · · · · · · · · · · · · · 768 5.6 Test Cluster Performance · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 1132 8.10 TiUP Common Operations· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 1133 8 Dynamically · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 1138 8.11.1 Common Operations · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 1138 100 码力 | 6705 页 | 110.86 MB | 10 月前3
TiDB v8.3 Documentation· · · · · · · · · · · · · · · · · · · · · 690 5.5.2 Log in to the database and perform simple operations· · · · · · · · · · · · · · · 693 5.6 Test Cluster Performance · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 1051 9 8.10 TiUP Common Operations· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 1052 8 Dynamically · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 1057 8.11.1 Common Operations · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 1057 8.120 码力 | 6606 页 | 109.48 MB | 10 月前3
TiDB v8.2 Documentation· · · · · · · · · · · · · · · · · · · · · 687 5.5.2 Log in to the database and perform simple operations· · · · · · · · · · · · · · · 690 5.6 Test Cluster Performance · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 1046 9 8.10 TiUP Common Operations· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 1047 8 Dynamically · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 1052 8.11.1 Common Operations · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 1052 8.120 码力 | 6549 页 | 108.77 MB | 10 月前3
TiDB v8.1 Documentation· · · · · · · · · · · · · · · · · · · · · 685 5.5.2 Log in to the database and perform simple operations· · · · · · · · · · · · · · · 688 5.6 Test Cluster Performance · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 1043 9 8.10 TiUP Common Operations· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 1044 8 Dynamically · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 1049 8.11.1 Common Operations · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 1049 8.120 码力 | 6479 页 | 108.61 MB | 10 月前3
Julia 1.11.5 Documentationand one . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 6 Mathematical Operations and Elementary Functions 30 6.1 Arithmetic Operators . . . . . . . . . . . . . . . . . . . . Triple-Quoted String Literals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 8.7 Common Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 8.8 Non-Standard String Aliases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 12.14 Operations on Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 12.15 Custom0 码力 | 2007 页 | 6.73 MB | 3 月前3
共 290 条
- 1
- 2
- 3
- 4
- 5
- 6
- 29













