Noexcept: Enabling Testing of Contract Checks## 20 23 October 01 - 06 ## +23 ## Noexcept? Enabling Testing of Contract Checks ## PABLO HALPERN & TIMUR DOUMLER ## Welcome What can the Screen Actors Guild and the Writers Guild of America tell programs require good contracts. Corollary: Good contracts require good enforcement. WGA • Contract checks help catch bugs early in the process.  Observation: Good enforcement requires good oversight. Contract checks should themselves be tested. Today's talk ## Goals – What We Hope to Teach You How the noexcept0 码力 | 90 页 | 1.38 MB | 1 年前3
Back to Basics: Smart Pointersnt max() std::cout # Smart Pointers std::cout ## Back to Basics d(std::logical std::cout << "myVec::"; for (auto i: myVec).std::cout std::cout << "\n"; std::vectormyVec2); Rainer Grimm Training, Coaching, and Technology Consulting www.ModernesCpp.net ## Smart Pointer A First Overview std::unique_ptr – Exclusive Ownership std::shared_ptr - Shared Ownership std::weak_ptr – Break of Cyclic References Performance Concurrency Function Arguments and Return Values ## Smart Pointer A First Overview std::unique_ptr – Exclusive Ownership std::shared_ptr - Shared Ownership0 码力 | 30 页 | 625.43 KB | 1 年前3
Rustle: the first static analyzer for smart contracts in RustRUST CHINA CONF 2023 第三届中国Rust开发者大会 6.17-6.18 @Shanghai ## Rustle: the first static analyzer for smart contracts in Rust Matthew Jiang Director of Security Team @ BlockSec Outline 1 Motivation 2 Background Conclusion ## Motivation Why do we develop Rustle? ## 😍 ## Motivation Emerging chains with Rust as smart contracts language ## SOLANA NEAR NERVOS Polkadot CosmWasm ## Limitations of manual audit • Time-consuming IR Back-end x86 ARM BPF WASM LLVM Pass: rich APIs to analysis the LLVM IR Blockchains with smart contracts in Rust ## Near Rust . This means that most enterprises already have the skill set needed to develop smart contracts, and no additional training to learn a new language or DSL is needed. The Fabric platform0 码力 | 533 页 | 8.37 MB | 2 年前3
Contracts for C++Proposal: add contract assertions to C++ Widget getWidget (index i) pre (i > 0) // precondition assertion post (w: w.index() == i); // postcondition assertion ## Proposal: add contract assertions to add contract assertions to C++ Widget getWidget (index i) pre (i > 0) // precondition assertion post (w: w.index() == i) // postcondition assertion { auto* db = getDatabase(); contract_assert high bar set for level of consensus. The proposal includes syntax for specifying three kinds of contract assertions: precondition assertions, postcondition assertions, and assertion statements. In addition0 码力 | 181 页 | 4.44 MB | 1 年前3
SuperCharge Your IPC Programs With C++20 and CCI PatternCommunication • Programs stand for software running in a constrained environment - CCI stands for: ○ Contract o Concept o Implementation ## Problem Definition: Channel Extraction 1. Images are used throughout • Create a CONTRACT which specifies the characteristics of a data-type. • Create a CONCEPT which enforces the CONTRACT • Create a IMPLEMENTATION constrained by CONCEPT. ## SD_BUS Contract ☀️ ☁️ ☁️ typedef std::unique_ptrSD_BUS_INNER_TYPE; struct SD_BUS_CONTRACT { template static constexpr bool IsUniquePtr = std::is_same ::value; 0 码力 | 57 页 | 7.11 MB | 1 年前3
Six Ways for Implementing Math Expressions Calculator9_2.jpg) # Six ways for Implementing Math Expressions Calculator A walk through polymorphism, smart pointers, templates, concepts and more Amir Kirsh  << endl; delete e; Why do we use new and delete to begin with? Shouldn't we use smart pointers? First improvement attempt: unique_ptr ## Let's try it together Live Coding! ## Let's mandatory for Polymorphism! - Prefer using smart pointers for internal members - Try to hide your smart pointers, exposing value type semantics (Treat the use of smart pointers as an implementation detail!)0 码力 | 63 页 | 1.85 MB | 1 年前3
Hyperledger Fabric 1.4.9 Documentationcryptocurrency, took a different approach, integrating many of the same characteristics as Bitcoin but adding smart contracts to create a platform for distributed applications. Bitcoin and Ethereum fall into a class chain and even digital music delivery. Fabric is the first distributed ledger platform to support smart contracts authored in general-purpose programming languages such as Java, Go and Node.js, rather than domain-specific languages (DSL). This means that most enterprises already have the skill set needed to develop smart contracts, and no additional training to learn a new language or DSL is needed. The Fabric platform0 码力 | 701 页 | 9.02 MB | 2 年前3
Hyperledger Fabric 2.0.1 Documentationcryptocurrency, took a different approach, integrating many of the same characteristics as Bitcoin but adding smart contracts to create a platform for distributed applications. Bitcoin and Ethereum fall into a class chain and even digital music delivery. Fabric is the first distributed ledger platform to support smart contracts authored in general-purpose programming languages such as Java, Go and Node.js, rather than domain-specific languages (DSL). This means that most enterprises already have the skill set needed to develop smart contracts, and no additional training to learn a new language or DSL is needed. The Fabric platform0 码力 | 760 页 | 10.21 MB | 2 年前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100
相关搜索词
contract checksnoexceptexceptionstestingannotationsstd::unique_ptrstd::shared_ptrstd::weak_ptrRAIIC++20静态分析智能合约Rust安全漏洞区块链CandidDFINITY递归类型Hyperledger FabricBlockchainDistributed ledgerChannelSmart contractContractsC++contract assertionspreconditionpostconditionCCI PatternIPCContractConceptpolymorphismsmart pointerstemplatesconceptsSmart ContractsChaincodePermissioned BlockchainBlockchain networkDocker images













