Whole-known-network
<p><span class="h-card" translate="no"><a href="https://hachyderm.io/@c0dec0dec0de" class="u-url mention">@<span>c0dec0dec0de</span></a></span> <span class="h-card" translate="no"><a href="https://adhd.irenes.space/@ireneista" class="u-url mention">@<span>ireneista</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.social/@mcc" class="u-url mention">@<span>mcc</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.transneptune.net/@owen" class="u-url mention">@<span>owen</span></a></span> I found FreeCAD so bad that I sunk 5 years and several tens of thousands of dollars of my own cash in maintaining a different CAD, SolveSpace; I feel the same way about Inkscape but never wanted a good vector editor enough</p>
<p><span class="h-card" translate="no"><a href="https://mastodon.social/@whitequark" class="u-url mention">@<span>whitequark</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.social/@tef" class="u-url mention">@<span>tef</span></a></span> if it's truly 10x why would they pay more than 8 hours to get 80 hours per week</p>
<p><span class="h-card" translate="no"><a href="https://unstable.systems/@demize" class="u-url mention">@<span>demize</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.social/@tef" class="u-url mention">@<span>tef</span></a></span> oh, yeah, if you're relying on the borrow checker because it's fun to explore you're probably going to have the experience you're having yeah</p>
<p><span class="h-card" translate="no"><a href="https://chaos.social/@SDRHoernchen" class="u-url mention">@<span>SDRHoernchen</span></a></span> oh wow that's awful then, I do not want to design in the LGA</p>
<p><span class="h-card" translate="no"><a href="https://mastodon.social/@tef" class="u-url mention">@<span>tef</span></a></span> <span class="h-card" translate="no"><a href="https://unstable.systems/@demize" class="u-url mention">@<span>demize</span></a></span> this is strictly speaking true but a more accurate description of the argument I'm making is that using those things allows you to relegate your interaction with the borrow checker to a simplistic and formulaic way that doesn't have a habit of making you pause while you're in the middle of something else</p><p>re "Python experience", I meant that as in "the Python experience of managing object lifetimes", not that Rust would be literally similar to Python in most aspects</p>
<p><span class="h-card" translate="no"><a href="https://unstable.systems/@demize" class="u-url mention">@<span>demize</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.social/@tef" class="u-url mention">@<span>tef</span></a></span> I think a lot of people use Rust in a flawed way that boils down to "the compiler provides this beautiful and complicated interface, so I should rely on it". this applies to the borrow checker, trait system, higher kinded types, macros, some other things</p><p>you can, in fact, completely ignore all of that and write impactful and high-quality Rust code. the TCP/IP stack I wrote, smoltcp, is like that; it has like one or two places where it does something nontrivial</p>
<p><span class="h-card" translate="no"><a href="https://unstable.systems/@demize" class="u-url mention">@<span>demize</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.social/@tef" class="u-url mention">@<span>tef</span></a></span> well it sounds like the rust things you work on do not require or benefit much from using long-lived (more than one block or even statement) borrowed pointers</p><p>in this case I would simply not use them</p><p>it's a slight performance hit but in many cases nobody cares, and it almost completely frees you from the "oh, the compiler says I can't have nice things" problem you're referring to here</p>
<p><span class="h-card" translate="no"><a href="https://unstable.systems/@demize" class="u-url mention">@<span>demize</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.social/@whitequark" class="u-url mention">@<span>whitequark</span></a></span> </p><p>i think you still need some base level of understanding of the borrow checker in order to consistently ignore it through judicious use of clone(), Arc<Mutex<>>, Rc<RefCell<>></p><p>like, even things like "print every element in the hash" involves using a pretty unique api</p><p>it's not really the python experience, even before you get to things like reflection, or dynamic invocation</p>
<p><span class="h-card" translate="no"><a href="https://mastodon.social/@whitequark" class="u-url mention">@<span>whitequark</span></a></span> not yet.. but who knows, the ds says "applicable only for 104LGA part" at one point, so there might be more packaging options if infineon ever manages to actually release all of those new usb chips.</p>