<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<br>
<br>
<div class="moz-cite-prefix">On 1/1/20 11:44 AM, David Mason wrote:<br>
</div>
<blockquote type="cite"
cite="mid:3f9d65ca-663d-4de9-968c-9931429eaff0@Spark">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title></title>
<div name="messageBodySection">
<div dir="auto">Borrowing is entirely a compile-time analysis.
There is no runtime impact (other than the fact that you can
get away without a garbage collector - in a safe way).
<div dir="auto"><br>
</div>
<div dir="auto">The Learn Rust the Dangerous way article is
very good, by the way! I heartily endorse it for the
C-philes among GTALUG. If you haven’t read it, one of the
things that might convince you is that the leaderboard for
this highly-optimized n-body simulation has Rust in the
first-place <a
href="https://benchmarksgame-team.pages.debian.net/benchmarksgame/performance/nbody.html"
moz-do-not-send="true">https://benchmarksgame-team.pages.debian.net/benchmarksgame/performance/nbody.html</a> -
faster than C, C++, Fortran or Ada. I’ve added it to my list
of resources for Rust: <a
href="https://cps506.scs.ryerson.ca/Resources/rust.html"
moz-do-not-send="true">https://cps506.scs.ryerson.ca/Resources/rust.html</a></div>
</div>
</div>
</blockquote>
Ownership makes sense its a compiler version of smart pointers. My
concerns are still:<br>
What about circular references in which the owner depends on data
from the child<br>
but cannot free it due to the knowledge also depending on the
parent. Binary trees<br>
are a problem here. Or you must assume like garbage collectors this
never occurs<br>
and this is one way to get memory leaks in a lot of garbage
collectors fast.<br>
<br>
Rust seems fine for a lot of things but this one case does not seem
solved at least<br>
in my knowledge or is assumed to not be a big issue and I could be
wrong but<br>
from my limited research it appears not,<br>
Nick <br>
<blockquote type="cite"
cite="mid:3f9d65ca-663d-4de9-968c-9931429eaff0@Spark">
<div name="messageBodySection">
<div dir="auto">
</div>
</div>
<div name="messageSignatureSection"><br>
<div class="matchFont">../Dave</div>
</div>
<div name="messageReplySection">On Dec 31, 2019, 4:22 PM -0500,
Nicholas Krause via talk <a class="moz-txt-link-rfc2396E" href="mailto:talk@gtalug.org"><talk@gtalug.org></a>, wrote:<br>
<blockquote type="cite" class="spark_quote" style="margin: 5px
5px; padding-left: 10px; border-left: thin solid #1abc9c;"><br>
<br>
On 12/31/19 11:57 AM, D. Hugh Redelmeier via talk wrote:<br>
<blockquote type="cite" class="spark_quote" style="margin: 5px
5px; padding-left: 10px; border-left: thin solid #e67e22;">|
From: Tom Low-Shang via talk <a class="moz-txt-link-rfc2396E" href="mailto:talk@gtalug.org"><talk@gtalug.org></a><br>
<br>
| I'm interested in your thoughts on Rust if you attended
the talk.<br>
<br>
The talk was mostly a guided creation of a program. So I
don't think<br>
that it answered any of your questions.<br>
<br>
| I'm currently learning Rust the old fashioned hacker way
(from books and<br>
| other people's code :)). My biggest mistake was trying to
use Rust with<br>
| SDL2 to display some graphics. My head still hurts from
banging it into<br>
| a wall called 'lifetimes'. :)<br>
<br>
The whole idea of borrowing etc. is fundamental to Rust and
how it<br>
ensures safety. Without garbage collection. If you don't
like or<br>
understand this approach, Rust isn't useful.<br>
</blockquote>
Hugh,<br>
I've a question about how borrowing is implemented internally
as it can lead<br>
to a problem, if I allow lots of memory can my program stall
because of this<br>
at the end of a block. In addition due to this does borrow
checking<br>
limit or<br>
not implement something like freelists or caching to get
better usage of the<br>
CPU cache as that's also a concern.<br>
<br>
Thanks,<br>
Nick<br>
<blockquote type="cite" class="spark_quote" style="margin: 5px
5px; padding-left: 10px; border-left: thin solid #e67e22;">---<br>
Post to this mailing list <a class="moz-txt-link-abbreviated" href="mailto:talk@gtalug.org">talk@gtalug.org</a><br>
Unsubscribe from this mailing list
<a class="moz-txt-link-freetext" href="https://gtalug.org/mailman/listinfo/talk">https://gtalug.org/mailman/listinfo/talk</a><br>
</blockquote>
<br>
---<br>
Post to this mailing list <a class="moz-txt-link-abbreviated" href="mailto:talk@gtalug.org">talk@gtalug.org</a><br>
Unsubscribe from this mailing list
<a class="moz-txt-link-freetext" href="https://gtalug.org/mailman/listinfo/talk">https://gtalug.org/mailman/listinfo/talk</a><br>
</blockquote>
</div>
</blockquote>
<br>
</body>
</html>