{
  "$type": "site.standard.document",
  "bskyPostRef": {
    "cid": "bafyreic3txv5vyol74mienkanynnie4p2a4kfwpxjjopxaqgsfkumcotea",
    "uri": "at://did:plc:ivbknywyskln22er3nkssdhl/app.bsky.feed.post/3mhj55ejdsx72"
  },
  "path": "/t/idea-borrowck-transparent-function-calls/24103#post_11",
  "publishedAt": "2026-03-20T13:39:54.000Z",
  "site": "https://internals.rust-lang.org",
  "textContent": "Vorpal:\n\n> I have found Rust one of the easiest languages to refactor in ... thus needs a refactor anyway\n\nI kind of expected this response. IMO most time it's self-inflicted wound, you won't need the refactor in begin with if you are not using Rust. This cause serious momentum issue, esp in gamedev. Maybe it's suprising to you, but absolute cleanness and correctness is not always the top priority.\n\nVorpal:\n\n> What I _do_ agree would be useful is partial borrowing. But I suspect you would find an explicit version of it works just fine, especially if it is just depth 0 or 1 as you describe. Then you basically only need to update in one or two places for your experiments. I think we should aim to get explicit partial borrowing first and see how that works out.\n\nOk, disclaimer first: I'm totally not hating or bashing on t-types or t-lang, they do fantastic works.\n\nBut here's the thing, partial borrowing (or we call them view types) absolutely won't come out in 3 years, it has much higher language semantic implications. TFC is a much smaller proposal, I can implement it myself in like 2 months. \"Wait for view types\" is basically equivalent to \"forget about this\" to me.\n\nVorpal:\n\n> Would it stay that way?\n\nThis is one thing I have high confidence with an answer of yes.",
  "title": "Idea: Borrowck Transparent Function Calls"
}