Pipeline Architectures in C++: Overloaded Pipe Operator | and Its Monadic Operations
overview of what the poster reports on. Title: Pipeline architectures in C++: overloaded pipe operator | std::expected and its monadic operations Brief overview: Functional programming in C++ the overloaded pipe operator. In this poster I show how to implement a custom pipeline framework that employs std::expected, available since C++23. An overloaded custom pipe operator | will be presented of my book about C++ [1][3]. One of the topics was to describe the behavior of the overloaded pipe operator | in std::ranges. I came across Ankur's Satle lecture [4] and decided to expand on this topic0 码力 | 3 页 | 422.24 KB | 5 月前302 TiDB Operator 架构与实现 付业成
TiDB Operator: Design & Implemention Presented by Yecheng Fu (@cofyc) PingCAP.com Agenda ● TiDB Operator 简介 ● 扩展 Kubernetes 的几种方式 ● TiDB Operator 实现 TiDB Operator 是什么 PingCAP.com Cloud Native Scaling - Handle network, hardware failures, etc. - Backup/Restore/Data migration - ... TiDB Operator TiDB PingCAP.com Kubernetes Pattern - Declarative Model - 用户描述自己的期望,提交给 Kubernetes API Server implemented TiDB Operator Kubernetes Pattern - Declarative Model PingCAP.com Operator Pattern - Extending Kubernetes TiDB Operator TiDB PD API Kubernetes API PingCAP.com Operator Pattern - Custom0 码力 | 47 页 | 1.73 MB | 5 月前3Expressive Compile-time Parsers
Evolution API Design Metaprogramming TricksAbout the talk • Expressiveness in C++ • Parsers • Operator overloading • Domain specific languages • Open source compile-time libraries • API • Design • = {1,2,3,4}; vectorv(arr, arr + sizeof(arr) / sizeof(arr[0])); vector v = {1,2,3,4};Operator Overloading Use operators to call custom functions for specific types. std::filesystem::path p auto result = func(cats);Example – Compile Time Parsers template constexpr auto operator""_FROM() { constexpr auto parser = create_parser(); return parser(str); } /*...*/ std::vector 0 码力 | 134 页 | 1.73 MB | 5 月前3Custom Views for the Rest of Us
current_outer); [[nodiscard]] reference operator*() const; inner_iterator& operator++(); [[nodiscard]] inner_iterator operator++(int) [[nodiscard]] bool operator==(inner_iterator const& rhs) const; current_outer); [[nodiscard]] reference operator*() const; inner_iterator& operator++(); [[nodiscard]] inner_iterator operator++(int) [[nodiscard]] bool operator==(inner_iterator const& rhs) const; [[nodiscard]] reference operator*() const; 16 inner_iterator& operator++(); 17 [[nodiscard]] inner_iterator operator++(int) 18 [[nodiscard]] bool operator==(inner_iterator const& rhs)0 码力 | 187 页 | 13.25 MB | 5 月前3Pipes: How Plumbing Can Make Your C++ Code More Expressive
f(2) f(3) f(4) f(5) f(6) f(3) f(6) false false true! false false true! operator* operator++ operator* Initialisation9 inputs ranges::view::transform(f) ranges::view::filter(p) PULL PULL return i % 3 == 0; }) >>= pipes::push_back(results); Why operator>>= ? 1 2 3 4 5 614 push_back = results >> Why operator>>= ? Also, because it is right associative.15 Also, because it is OF THE TALK What gets in a pipeline ranges STL algorithms Multiple inputs The pipes Inside a pipe Branching out pipes The output of a pipeline Simple container adapters Complex container adapters0 码力 | 61 页 | 9.52 MB | 5 月前3Julia 1.11.4
6 Numeric Comparisons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 6.7 Operator Precedence and Associativity . . . . . . . . . . . . . . . . . . . . . . . . 37 6.8 Numerical Conversions infix operator with the same precedence as +. A space is required between an operator that ends with a subscript/superscript letter and a subsequent variable name. For example, if +ᵃ is an operator, then middle dot · (U+00B7) and the Greek interpunct · (U+0387) are both treated as the mathematical dot operator ⋅ (U+22C5). The minus sign − (U+2212) is treated as equivalent to the hyphen-minus sign - (U+002D)0 码力 | 2007 页 | 6.73 MB | 3 月前3Julia 1.11.5 Documentation
6 Numeric Comparisons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 6.7 Operator Precedence and Associativity . . . . . . . . . . . . . . . . . . . . . . . . 37 6.8 Numerical Conversions infix operator with the same precedence as +. A space is required between an operator that ends with a subscript/superscript letter and a subsequent variable name. For example, if +ᵃ is an operator, then middle dot · (U+00B7) and the Greek interpunct · (U+0387) are both treated as the mathematical dot operator ⋅ (U+22C5). The minus sign − (U+2212) is treated as equivalent to the hyphen-minus sign - (U+002D)0 码力 | 2007 页 | 6.73 MB | 3 月前3Julia 1.11.6 Release Notes
6 Numeric Comparisons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 6.7 Operator Precedence and Associativity . . . . . . . . . . . . . . . . . . . . . . . . 37 6.8 Numerical Conversions infix operator with the same precedence as +. A space is required between an operator that ends with a subscript/superscript letter and a subsequent variable name. For example, if +ᵃ is an operator, then middle dot · (U+00B7) and the Greek interpunct · (U+0387) are both treated as the mathematical dot operator ⋅ (U+22C5). The minus sign − (U+2212) is treated as equivalent to the hyphen-minus sign - (U+002D)0 码力 | 2007 页 | 6.73 MB | 3 月前3julia 1.13.0 DEV
7 Numeric Comparisons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 6.8 Operator Precedence and Associativity . . . . . . . . . . . . . . . . . . . . . . . . 37 6.9 Numerical Conversions infix operator with the same precedence as +. A space is required between an operator that ends with a subscript/superscript letter and a subsequent variable name. For example, if +ᵃ is an operator, then middle dot · (U+00B7) and the Greek interpunct · (U+0387) are both treated as the mathematical dot operator ⋅ (U+22C5). The minus sign − (U+2212) is treated as equivalent to the hyphen-minus sign - (U+002D)0 码力 | 2058 页 | 7.45 MB | 3 月前3Julia 1.12.0 RC1
6 Numeric Comparisons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 6.7 Operator Precedence and Associativity . . . . . . . . . . . . . . . . . . . . . . . . 37 6.8 Numerical Conversions infix operator with the same precedence as +. A space is required between an operator that ends with a subscript/superscript letter and a subsequent variable name. For example, if +ᵃ is an operator, then middle dot · (U+00B7) and the Greek interpunct · (U+0387) are both treated as the mathematical dot operator ⋅ (U+22C5). The minus sign − (U+2212) is treated as equivalent to the hyphen-minus sign - (U+002D)0 码力 | 2057 页 | 7.44 MB | 3 月前3
共 230 条
- 1
- 2
- 3
- 4
- 5
- 6
- 23