Matches in SemOpenAlex for { <https://semopenalex.org/work/W2996725384> ?p ?o ?g. }
Showing items 1 to 94 of
94
with 100 items per page.
- W2996725384 endingPage "32" @default.
- W2996725384 startingPage "1" @default.
- W2996725384 abstract "Type systems are useful not just for the safety guarantees they provide, but also for helping compilers generate more efficient code by simplifying important program analyses. In Rust, the type system imposes a strict discipline on pointer aliasing, and it is an express goal of the Rust compiler developers to make use of that alias information for the purpose of program optimizations that reorder memory accesses. The problem is that Rust also supports unsafe code, and programmers can write unsafe code that bypasses the usual compiler checks to violate the aliasing discipline. To strike a balance between optimizations and unsafe code, the language needs to provide a set of rules such that unsafe code authors can be sure, if they are following these rules, that the compiler will preserve the semantics of their code despite all the optimizations it is doing. In this work, we propose Stacked Borrows , an operational semantics for memory accesses in Rust. Stacked Borrows defines an aliasing discipline and declares programs violating it to have undefined behavior , meaning the compiler does not have to consider such programs when performing optimizations. We give formal proofs (mechanized in Coq) showing that this rules out enough programs to enable optimizations that reorder memory accesses around unknown code and function calls, based solely on intraprocedural reasoning. We also implemented this operational model in an interpreter for Rust and ran large parts of the Rust standard library test suite in the interpreter to validate that the model permits enough real-world unsafe Rust code." @default.
- W2996725384 created "2019-12-26" @default.
- W2996725384 creator A5025527323 @default.
- W2996725384 creator A5050585539 @default.
- W2996725384 creator A5058324179 @default.
- W2996725384 creator A5078763719 @default.
- W2996725384 date "2019-12-20" @default.
- W2996725384 modified "2023-10-17" @default.
- W2996725384 title "Stacked borrows: an aliasing model for Rust" @default.
- W2996725384 cites W1969064066 @default.
- W2996725384 cites W1990053053 @default.
- W2996725384 cites W1998263113 @default.
- W2996725384 cites W2003675210 @default.
- W2996725384 cites W201976661 @default.
- W2996725384 cites W2154942048 @default.
- W2996725384 cites W2779850521 @default.
- W2996725384 cites W2898471596 @default.
- W2996725384 cites W2899856510 @default.
- W2996725384 cites W2914074464 @default.
- W2996725384 cites W3206696058 @default.
- W2996725384 cites W4239690658 @default.
- W2996725384 cites W4292014545 @default.
- W2996725384 cites W61954547 @default.
- W2996725384 doi "https://doi.org/10.1145/3371109" @default.
- W2996725384 hasPublicationYear "2019" @default.
- W2996725384 type Work @default.
- W2996725384 sameAs 2996725384 @default.
- W2996725384 citedByCount "21" @default.
- W2996725384 countsByYear W29967253842018 @default.
- W2996725384 countsByYear W29967253842019 @default.
- W2996725384 countsByYear W29967253842020 @default.
- W2996725384 countsByYear W29967253842021 @default.
- W2996725384 countsByYear W29967253842022 @default.
- W2996725384 countsByYear W29967253842023 @default.
- W2996725384 crossrefType "journal-article" @default.
- W2996725384 hasAuthorship W2996725384A5025527323 @default.
- W2996725384 hasAuthorship W2996725384A5050585539 @default.
- W2996725384 hasAuthorship W2996725384A5058324179 @default.
- W2996725384 hasAuthorship W2996725384A5078763719 @default.
- W2996725384 hasBestOaLocation W29967253841 @default.
- W2996725384 hasConcept C111919701 @default.
- W2996725384 hasConcept C122783720 @default.
- W2996725384 hasConcept C133162039 @default.
- W2996725384 hasConcept C136536468 @default.
- W2996725384 hasConcept C150202949 @default.
- W2996725384 hasConcept C154526789 @default.
- W2996725384 hasConcept C154945302 @default.
- W2996725384 hasConcept C169590947 @default.
- W2996725384 hasConcept C173608175 @default.
- W2996725384 hasConcept C197781089 @default.
- W2996725384 hasConcept C199360897 @default.
- W2996725384 hasConcept C2144512 @default.
- W2996725384 hasConcept C26517878 @default.
- W2996725384 hasConcept C28180684 @default.
- W2996725384 hasConcept C4069607 @default.
- W2996725384 hasConcept C41008148 @default.
- W2996725384 hasConceptScore W2996725384C111919701 @default.
- W2996725384 hasConceptScore W2996725384C122783720 @default.
- W2996725384 hasConceptScore W2996725384C133162039 @default.
- W2996725384 hasConceptScore W2996725384C136536468 @default.
- W2996725384 hasConceptScore W2996725384C150202949 @default.
- W2996725384 hasConceptScore W2996725384C154526789 @default.
- W2996725384 hasConceptScore W2996725384C154945302 @default.
- W2996725384 hasConceptScore W2996725384C169590947 @default.
- W2996725384 hasConceptScore W2996725384C173608175 @default.
- W2996725384 hasConceptScore W2996725384C197781089 @default.
- W2996725384 hasConceptScore W2996725384C199360897 @default.
- W2996725384 hasConceptScore W2996725384C2144512 @default.
- W2996725384 hasConceptScore W2996725384C26517878 @default.
- W2996725384 hasConceptScore W2996725384C28180684 @default.
- W2996725384 hasConceptScore W2996725384C4069607 @default.
- W2996725384 hasConceptScore W2996725384C41008148 @default.
- W2996725384 hasFunder F4320335254 @default.
- W2996725384 hasIssue "POPL" @default.
- W2996725384 hasLocation W29967253841 @default.
- W2996725384 hasOpenAccess W2996725384 @default.
- W2996725384 hasPrimaryLocation W29967253841 @default.
- W2996725384 hasRelatedWork W2046673373 @default.
- W2996725384 hasRelatedWork W2049369293 @default.
- W2996725384 hasRelatedWork W2141365240 @default.
- W2996725384 hasRelatedWork W2362192177 @default.
- W2996725384 hasRelatedWork W4239042909 @default.
- W2996725384 hasRelatedWork W4242254025 @default.
- W2996725384 hasRelatedWork W4245736681 @default.
- W2996725384 hasRelatedWork W4319323806 @default.
- W2996725384 hasRelatedWork W4321012239 @default.
- W2996725384 hasRelatedWork W322847698 @default.
- W2996725384 hasVolume "4" @default.
- W2996725384 isParatext "false" @default.
- W2996725384 isRetracted "false" @default.
- W2996725384 magId "2996725384" @default.
- W2996725384 workType "article" @default.