Filters








93 Hits in 5.1 sec

Safe, Flexible Aliasing with Deferred Borrows

Chris Fallin, Tobias Pape, Robert Hirschfeld
<span title="2020-11-06">2020</span> <i title="Schloss Dagstuhl - Leibniz-Zentrum für Informatik"> <a target="_blank" rel="noopener" href="https://fatcat.wiki/container/qnp47ut6vrdjjmiy7zdltauwje" style="color: black;">European Conference on Object-Oriented Programming</a> </i> &nbsp;
In particular, borrowing and ownership systems, such as the one pioneered by the Rust language, require the programmer to abide by certain aliasing restrictions but in return guarantee that no unsafe aliasing  ...  Because borrows enforce aliasing rules for their entire lifetimes, they cannot be used to implement some common patterns that pointers would allow.  ...  An instance of an object (in Rust, a struct) can either exist on the stack or on the heap.  ... 
<span class="external-identifiers"> <a target="_blank" rel="external noopener noreferrer" href="https://doi.org/10.4230/lipics.ecoop.2020.30">doi:10.4230/lipics.ecoop.2020.30</a> <a target="_blank" rel="external noopener" href="https://dblp.org/rec/conf/ecoop/Fallin19.html">dblp:conf/ecoop/Fallin19</a> <a target="_blank" rel="external noopener" href="https://fatcat.wiki/release/iexxhc27mnhkfe7l5juess45zq">fatcat:iexxhc27mnhkfe7l5juess45zq</a> </span>
<a target="_blank" rel="noopener" href="https://web.archive.org/web/20201210190441/https://drops.dagstuhl.de/opus/volltexte/2020/13187/pdf/LIPIcs-ECOOP-2020-30.pdf" title="fulltext PDF download" data-goatcounter-click="serp-fulltext" data-goatcounter-title="serp-fulltext"> <button class="ui simple right pointing dropdown compact black labeled icon button serp-button"> <i class="icon ia-icon"></i> Web Archive [PDF] <div class="menu fulltext-thumbnail"> <img src="https://blobs.fatcat.wiki/thumbnail/pdf/da/2f/da2f98ac92c737f0a18e682b909914e1e00356dc.180px.jpg" alt="fulltext thumbnail" loading="lazy"> </div> </button> </a> <a target="_blank" rel="external noopener noreferrer" href="https://doi.org/10.4230/lipics.ecoop.2020.30"> <button class="ui left aligned compact blue labeled icon button serp-button"> <i class="unlock alternate icon" style="background-color: #fb971f;"></i> Publisher / doi.org </button> </a>

The Move Borrow Checker [article]

Sam Blackshear, John Mitchell, Todd Nowacki, Shaz Qadeer
<span title="2022-05-10">2022</span> <i > arXiv </i> &nbsp; <span class="release-stage" >pre-print</span>
The language meets this challenge with a novel memory model and a modular, intraprocedural static reference safety analysis that leverages key properties of the memory.  ...  The Move language provides abstractions for programming with digital assets via a mix of value semantics and reference semantics.  ...  Unfortunately, traditional approaches for ensuring memory safety are not suitable for Move's deployment model.  ... 
<span class="external-identifiers"> <a target="_blank" rel="external noopener" href="https://arxiv.org/abs/2205.05181v1">arXiv:2205.05181v1</a> <a target="_blank" rel="external noopener" href="https://fatcat.wiki/release/e7eainewhjfp7b4u6pk2q5cw3i">fatcat:e7eainewhjfp7b4u6pk2q5cw3i</a> </span>
<a target="_blank" rel="noopener" href="https://web.archive.org/web/20220514022449/https://arxiv.org/pdf/2205.05181v1.pdf" title="fulltext PDF download" data-goatcounter-click="serp-fulltext" data-goatcounter-title="serp-fulltext"> <button class="ui simple right pointing dropdown compact black labeled icon button serp-button"> <i class="icon ia-icon"></i> Web Archive [PDF] <div class="menu fulltext-thumbnail"> <img src="https://blobs.fatcat.wiki/thumbnail/pdf/52/05/5205794c8a71cb012da04a27ad3950cf39578959.180px.jpg" alt="fulltext thumbnail" loading="lazy"> </div> </button> </a> <a target="_blank" rel="external noopener" href="https://arxiv.org/abs/2205.05181v1" title="arxiv.org access"> <button class="ui compact blue labeled icon button serp-button"> <i class="file alternate outline icon"></i> arxiv.org </button> </a>

An Executable Operational Semantics for Rust with the Formalization of Ownership and Borrowing [article]

Shuanglong Kan, Zhe Chen, David Sanan, Shang-Wei Lin, Yang Liu
<span title="2020-07-24">2020</span> <i > arXiv </i> &nbsp; <span class="release-stage" >pre-print</span>
Rust is an emergent systems programming language highlighting memory safety by its Ownership and Borrowing System (OBS).  ...  Moreover, RustSEM provides an operational semantics for OBS at the memory-level, which can be used to verify the runtime behavior of Rust programs against the OBS invariants.  ...  Stackborrow [Jung et al. 2020 ] presents an alias model to regulate the use of unsafe pointers, and checks borrowings by creating a stack for each memory location, instead of explicitly using lifetimes  ... 
<span class="external-identifiers"> <a target="_blank" rel="external noopener" href="https://arxiv.org/abs/1804.07608v2">arXiv:1804.07608v2</a> <a target="_blank" rel="external noopener" href="https://fatcat.wiki/release/jz5l2nkhnjhe3h7aml43mhvoim">fatcat:jz5l2nkhnjhe3h7aml43mhvoim</a> </span>
<a target="_blank" rel="noopener" href="https://web.archive.org/web/20200829123733/https://arxiv.org/pdf/1804.07608v2.pdf" title="fulltext PDF download" data-goatcounter-click="serp-fulltext" data-goatcounter-title="serp-fulltext"> <button class="ui simple right pointing dropdown compact black labeled icon button serp-button"> <i class="icon ia-icon"></i> Web Archive [PDF] <div class="menu fulltext-thumbnail"> <img src="https://blobs.fatcat.wiki/thumbnail/pdf/c7/f9/c7f9b65a5fed39962b7b5af5dad6d872c7b802eb.180px.jpg" alt="fulltext thumbnail" loading="lazy"> </div> </button> </a> <a target="_blank" rel="external noopener" href="https://arxiv.org/abs/1804.07608v2" title="arxiv.org access"> <button class="ui compact blue labeled icon button serp-button"> <i class="file alternate outline icon"></i> arxiv.org </button> </a>

Rust Distilled: An Expressive Tower of Languages [article]

Aaron Weiss, Daniel Patterson, Amal Ahmed
<span title="2018-08-16">2018</span> <i > arXiv </i> &nbsp; <span class="release-stage" >pre-print</span>
In this talk, we will describe our ongoing work on designing a formal semantics for Rust that captures ownership and borrowing without the details of lifetime analysis.  ...  This yields a simpler model of Rust and its type system that we think researchers will find easier to use as a starting point for investigating Rust extensions.  ...  This material is based upon work supported in part by the National Science Foundation under grants CCF-1453796 and CCF-1618732, and an NSF Graduate Research Fellowship (GRFP) for Aaron Weiss.  ... 
<span class="external-identifiers"> <a target="_blank" rel="external noopener" href="https://arxiv.org/abs/1806.02693v2">arXiv:1806.02693v2</a> <a target="_blank" rel="external noopener" href="https://fatcat.wiki/release/blupdqettvgrngaxxkkw64jjb4">fatcat:blupdqettvgrngaxxkkw64jjb4</a> </span>
<a target="_blank" rel="noopener" href="https://web.archive.org/web/20200823153853/https://arxiv.org/pdf/1806.02693v2.pdf" title="fulltext PDF download" data-goatcounter-click="serp-fulltext" data-goatcounter-title="serp-fulltext"> <button class="ui simple right pointing dropdown compact black labeled icon button serp-button"> <i class="icon ia-icon"></i> Web Archive [PDF] <div class="menu fulltext-thumbnail"> <img src="https://blobs.fatcat.wiki/thumbnail/pdf/97/33/9733eb8145479fa1f140f121482da44e8e8cb5dc.180px.jpg" alt="fulltext thumbnail" loading="lazy"> </div> </button> </a> <a target="_blank" rel="external noopener" href="https://arxiv.org/abs/1806.02693v2" title="arxiv.org access"> <button class="ui compact blue labeled icon button serp-button"> <i class="file alternate outline icon"></i> arxiv.org </button> </a>

Ownership is theft

Amit Levy, Michael P. Andersen, Bradford Campbell, David Culler, Prabal Dutta, Branden Ghena, Philip Levis, Pat Pannuto
<span title="">2015</span> <i title="ACM Press"> <a target="_blank" rel="noopener" href="https://fatcat.wiki/container/jj2vupi7offrtmqekd7qqfaxdm" style="color: black;">Proceedings of the 8th Workshop on Programming Languages and Operating Systems - PLOS &#39;15</a> </i> &nbsp;
In our experience developing an operating system for embedded systems in Rust, we have found that Rust's ownership model prevents otherwise safe resource sharing common in the embedded domain, conflicts  ...  In addition, we draw from our experience to propose a new language extension to Rust that would enable it to provide better memory safety tools for event-driven platforms.  ...  Borrows are created using an & and can be either mutable or immutable. There are two main restrictions on borrows: This ownership model allows the compiler to provide two important safety mechanisms.  ... 
<span class="external-identifiers"> <a target="_blank" rel="external noopener noreferrer" href="https://doi.org/10.1145/2818302.2818306">doi:10.1145/2818302.2818306</a> <a target="_blank" rel="external noopener" href="https://dblp.org/rec/conf/sosp/LevyACCDGLP15.html">dblp:conf/sosp/LevyACCDGLP15</a> <a target="_blank" rel="external noopener" href="https://fatcat.wiki/release/kqogkn33vzdk7eevnd7qslgfxy">fatcat:kqogkn33vzdk7eevnd7qslgfxy</a> </span>
<a target="_blank" rel="noopener" href="https://web.archive.org/web/20161109015613/http://web.eecs.umich.edu/~prabal/pubs/papers/levy15ownership.pdf" title="fulltext PDF download" data-goatcounter-click="serp-fulltext" data-goatcounter-title="serp-fulltext"> <button class="ui simple right pointing dropdown compact black labeled icon button serp-button"> <i class="icon ia-icon"></i> Web Archive [PDF] <div class="menu fulltext-thumbnail"> <img src="https://blobs.fatcat.wiki/thumbnail/pdf/e9/e4/e9e4080ef65d710f0efeed40536a42439a132514.180px.jpg" alt="fulltext thumbnail" loading="lazy"> </div> </button> </a> <a target="_blank" rel="external noopener noreferrer" href="https://doi.org/10.1145/2818302.2818306"> <button class="ui left aligned compact blue labeled icon button serp-button"> <i class="external alternate icon"></i> acm.org </button> </a>

Recursive Data Structures in SPARK [chapter]

Claire Dross, Johannes Kanig
<span title="">2020</span> <i title="Springer International Publishing"> <a target="_blank" rel="noopener" href="https://fatcat.wiki/container/2w3awgokqne6te4nvlofavy5a4" style="color: black;">Lecture Notes in Computer Science</a> </i> &nbsp;
This extension is based on an ownership policy inspired by Rust to enforce non-aliasing through a move semantics of assignment.  ...  We explain how iteration over these structures can be handled using a restricted form of aliasing called local borrowing.  ...  The resulting model is simpler because it does not make lifetime of borrowers explicit, and aliases created through borrows are always statically known.  ... 
<span class="external-identifiers"> <a target="_blank" rel="external noopener noreferrer" href="https://doi.org/10.1007/978-3-030-53291-8_11">doi:10.1007/978-3-030-53291-8_11</a> <a target="_blank" rel="external noopener" href="https://fatcat.wiki/release/awiwdmdahfafvl7ksfksnlyj3i">fatcat:awiwdmdahfafvl7ksfksnlyj3i</a> </span>
<a target="_blank" rel="noopener" href="https://web.archive.org/web/20200716053758/https://link.springer.com/content/pdf/10.1007%2F978-3-030-53291-8_11.pdf" title="fulltext PDF download" data-goatcounter-click="serp-fulltext" data-goatcounter-title="serp-fulltext"> <button class="ui simple right pointing dropdown compact black labeled icon button serp-button"> <i class="icon ia-icon"></i> Web Archive [PDF] <div class="menu fulltext-thumbnail"> <img src="https://blobs.fatcat.wiki/thumbnail/pdf/4a/29/4a29a3b7492dffc5ae49115ef5e8cc12bd157eb2.180px.jpg" alt="fulltext thumbnail" loading="lazy"> </div> </button> </a> <a target="_blank" rel="external noopener noreferrer" href="https://doi.org/10.1007/978-3-030-53291-8_11"> <button class="ui left aligned compact blue labeled icon button serp-button"> <i class="unlock alternate icon" style="background-color: #fb971f;"></i> springer.com </button> </a>

Does the Bronze Garbage Collector Make Rust Easier to Use? A Controlled Experiment [article]

Michael Coblenz, Michelle Mazurek, Michael Hicks
<span title="2021-10-03">2021</span> <i > arXiv </i> &nbsp; <span class="release-stage" >pre-print</span>
Doing so makes Rust very efficient, but makes Rust relatively hard to learn and use. We designed Bronze, an optional, library-based garbage collector for Rust.  ...  Surveys indicated that ownership, borrowing, and lifetimes were primary causes of the challenges that users faced when using Rust.  ...  The model for Aliasing explained 20.9% of the variance in grades (𝑟 2 ≈ .209).  ... 
<span class="external-identifiers"> <a target="_blank" rel="external noopener" href="https://arxiv.org/abs/2110.01098v1">arXiv:2110.01098v1</a> <a target="_blank" rel="external noopener" href="https://fatcat.wiki/release/kfimuzla2vc4lnxzrry4plfc3m">fatcat:kfimuzla2vc4lnxzrry4plfc3m</a> </span>
<a target="_blank" rel="noopener" href="https://web.archive.org/web/20211006134816/https://arxiv.org/pdf/2110.01098v1.pdf" title="fulltext PDF download" data-goatcounter-click="serp-fulltext" data-goatcounter-title="serp-fulltext"> <button class="ui simple right pointing dropdown compact black labeled icon button serp-button"> <i class="icon ia-icon"></i> Web Archive [PDF] <div class="menu fulltext-thumbnail"> <img src="https://blobs.fatcat.wiki/thumbnail/pdf/ea/87/ea8728979776a309996de32adcb2c0b9ee1713dc.180px.jpg" alt="fulltext thumbnail" loading="lazy"> </div> </button> </a> <a target="_blank" rel="external noopener" href="https://arxiv.org/abs/2110.01098v1" title="arxiv.org access"> <button class="ui compact blue labeled icon button serp-button"> <i class="file alternate outline icon"></i> arxiv.org </button> </a>

SafeDrop: Detecting Memory Deallocation Bugs of Rust Programs via Static Data-Flow Analysis [article]

Mohan Cui, Chengjun Chen, Hui Xu, Yangfan Zhou
<span title="2021-04-25">2021</span> <i > arXiv </i> &nbsp; <span class="release-stage" >pre-print</span>
Rust is an emerging programming language that aims to prevent memory-safety bugs. However, the current design of Rust also brings side effects which may increase the risk of memory-safety issues.  ...  Our approach analyzes each API of a Rust crate iteratively by traversing the control-flow graph and extracting all aliases of each data-flow.  ...  For example, an unsafe API may lead to shared mutable aliases, which violates the principle of Rust for memory management.  ... 
<span class="external-identifiers"> <a target="_blank" rel="external noopener" href="https://arxiv.org/abs/2103.15420v2">arXiv:2103.15420v2</a> <a target="_blank" rel="external noopener" href="https://fatcat.wiki/release/ohz42rnuxbdg5nm2t5matrtrwi">fatcat:ohz42rnuxbdg5nm2t5matrtrwi</a> </span>
<a target="_blank" rel="noopener" href="https://web.archive.org/web/20210331001628/https://arxiv.org/pdf/2103.15420v1.pdf" title="fulltext PDF download [not primary version]" data-goatcounter-click="serp-fulltext" data-goatcounter-title="serp-fulltext"> <button class="ui simple right pointing dropdown compact black labeled icon button serp-button"> <i class="icon ia-icon"></i> Web Archive [PDF] <span style="color: #f43e3e;">&#10033;</span> <div class="menu fulltext-thumbnail"> <img src="https://blobs.fatcat.wiki/thumbnail/pdf/23/f0/23f0b60b8724b465fc3054fd62d73a24d7205b06.180px.jpg" alt="fulltext thumbnail" loading="lazy"> </div> </button> </a> <a target="_blank" rel="external noopener" href="https://arxiv.org/abs/2103.15420v2" title="arxiv.org access"> <button class="ui compact blue labeled icon button serp-button"> <i class="file alternate outline icon"></i> arxiv.org </button> </a>

Resource Polymorphism [article]

Guillaume Munch-Maccagnoni
<span title="2018-03-07">2018</span> <i > arXiv </i> &nbsp; <span class="release-stage" >pre-print</span>
It builds on the ownership-and-borrowing models of systems programming languages (Cyclone, C++11, Rust) and on linear types in functional programming (Linear Lisp, Clean, Alms).  ...  It is also compatible with the upcoming multicore extension, and suggests that the Rust model for eliminating data-races applies.  ...  An alternative implementation model is inspired by permutation stacks (Baker, 1994a) . In this model, a stack of affine values would be maintained separately from the stack of copiable values.  ... 
<span class="external-identifiers"> <a target="_blank" rel="external noopener" href="https://arxiv.org/abs/1803.02796v1">arXiv:1803.02796v1</a> <a target="_blank" rel="external noopener" href="https://fatcat.wiki/release/brolamv6mjba7n4zjvde247mqi">fatcat:brolamv6mjba7n4zjvde247mqi</a> </span>
<a target="_blank" rel="noopener" href="https://web.archive.org/web/20200929060808/https://arxiv.org/pdf/1803.02796v1.pdf" title="fulltext PDF download" data-goatcounter-click="serp-fulltext" data-goatcounter-title="serp-fulltext"> <button class="ui simple right pointing dropdown compact black labeled icon button serp-button"> <i class="icon ia-icon"></i> Web Archive [PDF] <div class="menu fulltext-thumbnail"> <img src="https://blobs.fatcat.wiki/thumbnail/pdf/39/10/391076c916028d7258c9d7e0d0abf8d9ce7ba050.180px.jpg" alt="fulltext thumbnail" loading="lazy"> </div> </button> </a> <a target="_blank" rel="external noopener" href="https://arxiv.org/abs/1803.02796v1" title="arxiv.org access"> <button class="ui compact blue labeled icon button serp-button"> <i class="file alternate outline icon"></i> arxiv.org </button> </a>

RustBelt: securing the foundations of the rust programming language

Ralf Jung, Jacques-Henri Jourdan, Robbert Krebbers, Derek Dreyer
<span title="2017-12-27">2017</span> <i title="Association for Computing Machinery (ACM)"> <a target="_blank" rel="noopener" href="https://fatcat.wiki/container/dqy7qc7jkzal5bz3gueys3siz4" style="color: black;">Proceedings of the ACM on Programming Languages</a> </i> &nbsp;
We have carried out this verification for some of the most important libraries that are used throughout the Rust ecosystem.  ...  Our proof is extensible in the sense that, for each new Rust library that uses unsafe features, we can say what verification condition it must satisfy in order for it to be deemed a safe extension to the  ...  ACKNOWLEDGMENTS We wish to thank the Rust community in general, and Aaron Turon and Niko Matsakis in particular, for their feedback and countless helpful discussions.  ... 
<span class="external-identifiers"> <a target="_blank" rel="external noopener noreferrer" href="https://doi.org/10.1145/3158154">doi:10.1145/3158154</a> <a target="_blank" rel="external noopener" href="https://dblp.org/rec/journals/pacmpl/0002JKD18.html">dblp:journals/pacmpl/0002JKD18</a> <a target="_blank" rel="external noopener" href="https://fatcat.wiki/release/kcfdxqtkfncp7lahp6jlbv4eam">fatcat:kcfdxqtkfncp7lahp6jlbv4eam</a> </span>
<a target="_blank" rel="noopener" href="https://web.archive.org/web/20180726031105/https://hal.archives-ouvertes.fr/hal-01633165v2/document" title="fulltext PDF download" data-goatcounter-click="serp-fulltext" data-goatcounter-title="serp-fulltext"> <button class="ui simple right pointing dropdown compact black labeled icon button serp-button"> <i class="icon ia-icon"></i> Web Archive [PDF] <div class="menu fulltext-thumbnail"> <img src="https://blobs.fatcat.wiki/thumbnail/pdf/8b/07/8b07be47e60cd9c67c0310a85ba1a58a904f1622.180px.jpg" alt="fulltext thumbnail" loading="lazy"> </div> </button> </a> <a target="_blank" rel="external noopener noreferrer" href="https://doi.org/10.1145/3158154"> <button class="ui left aligned compact blue labeled icon button serp-button"> <i class="external alternate icon"></i> acm.org </button> </a>

System Programming in Rust

Abhiram Balasubramanian, Marek S. Baranowski, Anton Burtsev, Aurojit Panda, Zvonimir Rakamarić, Leonid Ryzhyk
<span title="">2017</span> <i title="ACM Press"> <a target="_blank" rel="noopener" href="https://fatcat.wiki/container/p275myg4sfbthjpnwdfxlfuh2i" style="color: black;">Proceedings of the 16th Workshop on Hot Topics in Operating Systems - HotOS &#39;17</a> </i> &nbsp;
While these capabilities have been in the spotlight of systems research for a long time, their practical use is hindered by high cost and complexity.  ...  Rust is a new system programming language that offers a practical and safe alternative to C.  ...  By restricting aliasing, Rust sidesteps the problem. We illustrate this in Section 4 by prototyping an IFC extension for Rust based on precise, yet scalable program analysis.  ... 
<span class="external-identifiers"> <a target="_blank" rel="external noopener noreferrer" href="https://doi.org/10.1145/3102980.3103006">doi:10.1145/3102980.3103006</a> <a target="_blank" rel="external noopener" href="https://dblp.org/rec/conf/hotos/Balasubramanian17.html">dblp:conf/hotos/Balasubramanian17</a> <a target="_blank" rel="external noopener" href="https://fatcat.wiki/release/jvidoiwomjesjh4pfh5zq3w5nm">fatcat:jvidoiwomjesjh4pfh5zq3w5nm</a> </span>
<a target="_blank" rel="noopener" href="https://web.archive.org/web/20170702220636/http://www.ics.uci.edu/~aburtsev/doc/crust-hotos17.pdf" title="fulltext PDF download" data-goatcounter-click="serp-fulltext" data-goatcounter-title="serp-fulltext"> <button class="ui simple right pointing dropdown compact black labeled icon button serp-button"> <i class="icon ia-icon"></i> Web Archive [PDF] <div class="menu fulltext-thumbnail"> <img src="https://blobs.fatcat.wiki/thumbnail/pdf/dd/53/dd53618659b5b895d0c83e3e7e2deb960c38486e.180px.jpg" alt="fulltext thumbnail" loading="lazy"> </div> </button> </a> <a target="_blank" rel="external noopener noreferrer" href="https://doi.org/10.1145/3102980.3103006"> <button class="ui left aligned compact blue labeled icon button serp-button"> <i class="external alternate icon"></i> acm.org </button> </a>

System Programming in Rust

Abhiram Balasubramanian, Marek S. Baranowski, Anton Burtsev, Aurojit Panda, Zvonimir Rakamari, Leonid Ryzhyk
<span title="2017-09-11">2017</span> <i title="Association for Computing Machinery (ACM)"> <a target="_blank" rel="noopener" href="https://fatcat.wiki/container/i24hgue5erh4haqtfyyjvfijdu" style="color: black;">ACM SIGOPS Operating Systems Review</a> </i> &nbsp;
While these capabilities have been in the spotlight of systems research for a long time, their practical use is hindered by high cost and complexity.  ...  Rust is a new system programming language that offers a practical and safe alternative to C.  ...  By restricting aliasing, Rust sidesteps the problem. We illustrate this in Section 4 by prototyping an IFC extension for Rust based on precise, yet scalable program analysis.  ... 
<span class="external-identifiers"> <a target="_blank" rel="external noopener noreferrer" href="https://doi.org/10.1145/3139645.3139660">doi:10.1145/3139645.3139660</a> <a target="_blank" rel="external noopener" href="https://fatcat.wiki/release/h2brz34d7fgrzalvbjqy2a7mse">fatcat:h2brz34d7fgrzalvbjqy2a7mse</a> </span>
<a target="_blank" rel="noopener" href="https://web.archive.org/web/20170702220636/http://www.ics.uci.edu/~aburtsev/doc/crust-hotos17.pdf" title="fulltext PDF download" data-goatcounter-click="serp-fulltext" data-goatcounter-title="serp-fulltext"> <button class="ui simple right pointing dropdown compact black labeled icon button serp-button"> <i class="icon ia-icon"></i> Web Archive [PDF] <div class="menu fulltext-thumbnail"> <img src="https://blobs.fatcat.wiki/thumbnail/pdf/dd/53/dd53618659b5b895d0c83e3e7e2deb960c38486e.180px.jpg" alt="fulltext thumbnail" loading="lazy"> </div> </button> </a> <a target="_blank" rel="external noopener noreferrer" href="https://doi.org/10.1145/3139645.3139660"> <button class="ui left aligned compact blue labeled icon button serp-button"> <i class="external alternate icon"></i> acm.org </button> </a>

Safe Pointers in SPARK 2014 [article]

Georges-Axel Jaloyan
<span title="2017-10-19">2017</span> <i > arXiv </i> &nbsp; <span class="release-stage" >pre-print</span>
We discuss the implementation and the case studies, and compare our solution with Rust.  ...  In the context of deductive software verification, programs with pointers present a major challenge due to pointer aliasing.  ...  Then we formalize these rules on a subset of SPARK and give a proof of non-aliasing, as done for a subset of Rust in [14] and [15] .  ... 
<span class="external-identifiers"> <a target="_blank" rel="external noopener" href="https://arxiv.org/abs/1710.07047v1">arXiv:1710.07047v1</a> <a target="_blank" rel="external noopener" href="https://fatcat.wiki/release/ybz76ducr5fkvhbqjoa7wt4h3q">fatcat:ybz76ducr5fkvhbqjoa7wt4h3q</a> </span>
<a target="_blank" rel="noopener" href="https://web.archive.org/web/20200826024227/https://arxiv.org/pdf/1710.07047v1.pdf" title="fulltext PDF download" data-goatcounter-click="serp-fulltext" data-goatcounter-title="serp-fulltext"> <button class="ui simple right pointing dropdown compact black labeled icon button serp-button"> <i class="icon ia-icon"></i> Web Archive [PDF] <div class="menu fulltext-thumbnail"> <img src="https://blobs.fatcat.wiki/thumbnail/pdf/5b/35/5b354f63bf508bfa08848c3337b95ee2b749a275.180px.jpg" alt="fulltext thumbnail" loading="lazy"> </div> </button> </a> <a target="_blank" rel="external noopener" href="https://arxiv.org/abs/1710.07047v1" title="arxiv.org access"> <button class="ui compact blue labeled icon button serp-button"> <i class="file alternate outline icon"></i> arxiv.org </button> </a>

Memory-Safety Challenge Considered Solved? An In-Depth Study with All Rust CVEs [article]

Hui Xu, Zhuangbin Chen, Mingshen Sun, Yangfan Zhou, Michael Lyu
<span title="2021-02-25">2021</span> <i > arXiv </i> &nbsp; <span class="release-stage" >pre-print</span>
Rust is an emerging programing language that aims at preventing memory-safety bugs without sacrificing much efficiency.  ...  While automatic memory claim bugs are related to the side effect of Rust newly-adopted ownership-based resource management scheme, unsound function reveals the essential challenge of Rust development for  ...  Associated with the model, Rust introduces a lifetime inference mechanism (similar as type inference [23] ) which assures that the lifetime of a borrowed ownership would last long enough for use.  ... 
<span class="external-identifiers"> <a target="_blank" rel="external noopener" href="https://arxiv.org/abs/2003.03296v6">arXiv:2003.03296v6</a> <a target="_blank" rel="external noopener" href="https://fatcat.wiki/release/houx2ikpubcnhati3huggalxle">fatcat:houx2ikpubcnhati3huggalxle</a> </span>
<a target="_blank" rel="noopener" href="https://web.archive.org/web/20201007011604/https://arxiv.org/pdf/2003.03296v5.pdf" title="fulltext PDF download [not primary version]" data-goatcounter-click="serp-fulltext" data-goatcounter-title="serp-fulltext"> <button class="ui simple right pointing dropdown compact black labeled icon button serp-button"> <i class="icon ia-icon"></i> Web Archive [PDF] <span style="color: #f43e3e;">&#10033;</span> </button> </a> <a target="_blank" rel="external noopener" href="https://arxiv.org/abs/2003.03296v6" title="arxiv.org access"> <button class="ui compact blue labeled icon button serp-button"> <i class="file alternate outline icon"></i> arxiv.org </button> </a>

Reference Capabilities for Safe Parallel Array Programming

Beatrice Åkerblom, Elias Castegren, Tobias Wrigstad
<span title="2019-05-31">2019</span> <i title="Aspect-Oriented Software Association (AOSA)"> <a target="_blank" rel="noopener" href="https://fatcat.wiki/container/nks2jw5aknfoxj2ck6xoi3hcl4" style="color: black;">The Art, Science, and Engineering of Programming</a> </i> &nbsp;
This is however not enough for arrays of non-primitives due to aliasing: accesses of separate array elements may return pointers to the same object, or overlapping structures.  ...  The array is a fundamental data structure that provides an efficient way to store and retrieve non-sparse data contiguous in memory.  ...  For example, in the case of a borrowing block, the buried variable is reinstated at the same time as any borrowed aliases are discarded from the stack.  ... 
<span class="external-identifiers"> <a target="_blank" rel="external noopener noreferrer" href="https://doi.org/10.22152/programming-journal.org/2020/4/1">doi:10.22152/programming-journal.org/2020/4/1</a> <a target="_blank" rel="external noopener" href="https://fatcat.wiki/release/lpobnonejvhk5peyjpjokn6sya">fatcat:lpobnonejvhk5peyjpjokn6sya</a> </span>
<a target="_blank" rel="noopener" href="https://web.archive.org/web/20191222120757/https://arxiv.org/pdf/1905.13716v2.pdf" title="fulltext PDF download [not primary version]" data-goatcounter-click="serp-fulltext" data-goatcounter-title="serp-fulltext"> <button class="ui simple right pointing dropdown compact black labeled icon button serp-button"> <i class="icon ia-icon"></i> Web Archive [PDF] <span style="color: #f43e3e;">&#10033;</span> <div class="menu fulltext-thumbnail"> <img src="https://blobs.fatcat.wiki/thumbnail/pdf/48/1c/481cb0ee1102a91e4c44dddd81bce03167f65cc9.180px.jpg" alt="fulltext thumbnail" loading="lazy"> </div> </button> </a> <a target="_blank" rel="external noopener noreferrer" href="https://doi.org/10.22152/programming-journal.org/2020/4/1"> <button class="ui left aligned compact blue labeled icon button serp-button"> <i class="unlock alternate icon" style="background-color: #fb971f;"></i> Publisher / doi.org </button> </a>
&laquo; Previous Showing results 1 &mdash; 15 out of 93 results