Skip Navigation
snaggen snaggen @programming.dev
Posts 428
Comments 265

Rust Foundation Releases Problem Statement on C++/Rust Interoperability

foundation.rust-lang.org Rust Foundation

The Rust Foundation is an independent non-profit organization to steward the Rust programming language and ecosystem, with a unique focus on supporting the set of maintainers that govern and develop the project.

Rust Foundation
1
Rust needs an official specification
  • That requires a complete picture and all possible use cases from the start. Initially when a language is new and hardly used there are much to benefit from flexibility and trying new concepts. Then as the language matures, a more formal process is needed to ensure stability. There is a reason these discussions comes now, since rust is in a very stable phase.

  • Rust needs an official specification

    tweedegolf.nl Rust needs an official specification - Blog - Tweede golf

    Can we currently reason about Rust code with absolute certainty? Not really, but we should be able to. In this article, we dive into the reasons why it may be time for a Rust specification.

    Rust needs an official specification - Blog - Tweede golf
    21
    The US government wants devs to stop using C and C++
  • As someone that have worked in software for 30 years, and deplying complicated software, shared libraries is a misstake. You think you get the benefit of size and easy security upgrades, but due to deployment hell you end up using docker and now your deployment actually added a whole OS in size and you need to do security upgrades for this OS instead of just your application. I use rust for some software now, and I build it with musl, and is struck by how small things get in relation to the regular deployment, and it feels like magic that I no longer get glibc incompatibility issues.

  • Google Summer of Code 2024 results

    blog.rust-lang.org Google Summer of Code 2024 results | Rust Blog

    Empowering everyone to build reliable and efficient software.

    Google Summer of Code 2024 results | Rust Blog
    1

    Rustls Outperforms OpenSSL and BoringSSL - Prossimo

    www.memorysafety.org Rustls Outperforms OpenSSL and BoringSSL

    ISRG has been investing heavily in the Rustls TLS library over the past few years. Our goal is to create a library that is both memory safe and a leader in performance. Back in January of this year we published a post about the start of our performance journey. We've come a long way since then and w...

    Rustls Outperforms OpenSSL and BoringSSL
    10

    Blocking code is a leaky abstraction – notgull

    notgull.net Blocking code is a leaky abstraction

    Asynchronous code does not require the rest of your code to be asynchronous. I can’t say the same for blocking code.

    4
    What are some mind blowing Rust tricks?
  • Ok, I then have some business proposals....

  • What are some mind blowing Rust tricks?
  • Mindblowing features are basically, by definition, a result of bad language design. They blow your mind, since they are totally unexpected behaviours. They may still be cool, but they are unexpected and hence unintuitive.

    A language that are full of these is Perl. And one simple one is that you can take the string "AAAAA" and use addition on that, like "AAAAA"++ and you will get the result "AAAAB". Cool you may think, but is it really? Addition is normally used to increase the value of a number, that is a completely different operation than modifying a String. The string "AAAAA" cannot be said to be greater or less than "AAAAB", besides the very special case when we order it. But in general the name "John" is not considered to be higher/lower than "Mark", they are just different. So, even if it is cool to manipulate strings by using addition/subtraction, it is still bad language design and very unintuitive. Also, since perl is so loosely typed, it may also cause very unexpected bugs.

  • My frustrations with Rust. Why is this the most loved language?
  • Which is kind of surprising, since it basically just is a bunch of "I'm cannot understand why .... is needed", "I cannot learn...." and "I think that is ugly". And since the OP is coming from TypeScript, and how the OPs understanding of programming, it is clear it is a junior web developer trying rust and failing. Nothing to see here... well, the OP clearly have some kind of grandios ego, thinking that the OPs inability to learn something, must be because it is bad (I mean, there is clearly no other possiblities)... but not even that is worth responding to. And don't read this wrong, there is plenty to complain about with Rust, however, nothing of that is in OP which is basically just as insightful as a baby crying.

  • Rust is rolling off the Volvo assembly line - Blog - Tweede golf
  • Ok, so we use different search engine so you didn't find this particular hit. But, do you really claim that learning material is an issue here. And about my attitude, yes, I was a bit cranky. In general, you can ask any stupid question, heck I ask stupid questions all the time and they will be answered kindly. The rust community knows that lifetimes and stuff like that is complicated.

    However, I'm quite fed up with the attitude that it is someone elses obligation to spoon feed you with knowledge that exists right under the nose... and that is a very common attitude amongst the "For rust to succeed..." evangelists.

  • Rust is rolling off the Volvo assembly line - Blog - Tweede golf
  • There are lots of guides, tutorials and documentation. The responsibility is no longer on someone else, it is up to the individuals to actually read any of them. And to be honest, if you are unable to use them to learn rust, maybe your c++ skills isn't that impressive either.

    https://bpbonline.com/products/rust-for-c-programmers?variant=42560853639368 is one if found using a tool called search engine...

  • tweedegolf.nl Rust is rolling off the Volvo assembly line - Blog - Tweede golf

    In my job I get to speak to lots of people about Rust. Some are just starting out, some have barely ever heard of it, and then some people are running Rust silently in production at a very large c ...

    Rust is rolling off the Volvo assembly line - Blog - Tweede golf
    13
    blog.rust-lang.org This Development-cycle in Cargo: 1.82 | Inside Rust Blog

    Want to follow along with Rust development? Curious how you might get involved? Take a look!

    This Development-cycle in Cargo: 1.82 | Inside Rust Blog
    0

    Rust Analyzer Changelog #253

    rust-analyzer.github.io Changelog #253

    Commit: 822644dRelease: 2024-09-30 (v0.3.2129)

    0
    brevzin.github.io Code Generation in Rust vs C++26

    One of the things I like to do is compare how different languages solve the same problem — especially when they end up having very different approaches. It’s always educational. In this case, a bunch of us have been working hard on trying to get reflection — a really transformative language feature ...

    This is a blog post that really is about C++, but with a look at how Rust does things. So, this is an interesting C++/Rust comparison for once.

    1
    GitHub - RReverser/serdebug: Serde-based replacement for #[derive(Debug)]
  • I wanted to use the debug fmt functions, to allow for pretty debug also.

  • github.com GitHub - RReverser/serdebug: Serde-based replacement for #[derive(Debug)]

    Serde-based replacement for #[derive(Debug)]. Contribute to RReverser/serdebug development by creating an account on GitHub.

    GitHub - RReverser/serdebug: Serde-based replacement for #[derive(Debug)]

    Last week I basically duplicated the serialization code to provide better debug output.... today, I see this pass in my Mastodon feed. 😀 Well... what are the odds... most likely close to 100% according to how the universe seems to operate.

    4
    Scientists grow ‘lost tree’ mentioned in Bible using mysterious ancient seed
  • No, but the process to identify the ones that work is all part of the modern medicine. Before that, placebo and lack of scientific methods made it impossible to separate a working substance from snake oil.

  • thehackernews.com Google's Shift to Rust Programming Cuts Android Memory Vulnerabilities by 52%

    Google's shift to Rust for Android has cut memory vulnerabilities by 52%, highlighting the benefits of safe coding.

    Google's Shift to Rust Programming Cuts Android Memory Vulnerabilities by 52%
    27
    Scientists grow ‘lost tree’ mentioned in Bible using mysterious ancient seed
  • Yes, historical medicin was so good, lets work our ass off to recreate it...

  • Gitoxide August 2024 Progress report

    github.com [August 2024] · Byron gitoxide · Discussion #1602

    As hoped, after last months dip my total time worked went back to 156h, up from 128, with 57h spent on open source maintenance (up from 39), and 48 of which went directly into Gitoxide (up from 32)...

    [August 2024] · Byron gitoxide · Discussion #1602
    0

    Release 0.13.0 · iced-rs/iced · GitHub

    github.com Release 0.13.0 · iced-rs/iced

    Added Introductory chapters to the official guide book. Pocket guide in API reference. Program API. #2331 Task API. #2463 Daemon API and Shell Runtime Unification. #2469 rich_text and markdown wid...

    Release 0.13.0 · iced-rs/iced
    0

    Why Rust mutexes look like they do - Cliffle

    18
    best linux terminal emulator
  • Are you saying that it is common that people use utf8 characters that you cannot easily type on a standard keyboard? I'm very skeptical of this claim.

  • best linux terminal emulator
  • Good to know that every time I feel the need to use ALGOL 68, I must remember to disable ligatures. Still not sure this is going to be a huge problem 😂

  • best linux terminal emulator
  • Well, that was something.... I have used ligatures in my code editor for quite a few years now, and I have NEVER been confused about the ambiguity this person is so upset about. Why? I have never ever seen the Unicode character for not equals in a code block, simply since it is not a valid character in any known language. In fact, I have never even seen it in a String where it actually would be legal, probably since nobody knows how to type that using a standard keyboard. This whole article felt like someone with a severe diagnose have locked in on some hypothetical correctness issue, that simply isn't a problem in the real world.

    But, if you for some reason find ligatures confusing, then you shouldn't use them. But, just to be clear, there is not a right of wrong like this blog post tries to argue, it is a matter of personal taste.

  • best linux terminal emulator
  • Splits, ligatures tabs and more

  • best linux terminal emulator
  • Cosmic term is nice. Still just alpha, so there are rough edges though.

  • Despite tech-savvy reputation, Gen Z falls behind in keyboard typing skills
  • For Boomers, cars was the latest tech that everyone was fiddling with. This caused even the boomer that wasn't very interested , to know quite a lot. For later generations, car became more of a means of transportation, and the knowledge of cars was only for specialists. For gen X, computers were the high tech thing, everyone was fiddling with. Most gen x can setup a printer if they have to. For later generations, computers are just tools, and the knowledge is only for specialists.

  • 0
    Announcing Rust 1.81.0
  • fs::exists() was a nice little improvement that I didn't know about until I read this announcement.

  • How can we return to techno-optimism?
  • Producing products that the users wants, and that solves tje users real problems. And not trying to make products as addictive as possible, to harvest as much user data as possible to sell.

  • One Of The Rust Linux Kernel Maintainers Steps Down - Cites "Nontechnical Nonsense"
  • The problem is that C is a prehistoric language and don't have any of the complex types for example. So, in a modern language you create a String. That string will have a length, and some well defined properties (like encoding and such). With C you have a char * , which is just a pointer to the memory that contains bytes, and hopefully is null terminated. The null termination is defined, but not enforced. Any encoding is whatever the developer had in mind. So the compiler just don't have the information to make any decisions. In rust you know exactly how long something lives, if something try to use it after that, the compiler can tell you. With C, all lifetimes lives in the developers head, and the compiler have no way of knowing. So, all these typing and properties of modern languages, are basically the implementation of your suggestion.

  • Firefox rolls out Total Cookie Protection by default to all desktop users worldwide | It is Firefox’s strongest privacy protection to date, confining cookies to the site where they were created
  • It is making the tracking protection part of containers obsolete, this is basically that functionality but built in and default. The containers still let you have multiple cookie jars for the same site, so they are still useful if you have multiple accounts on a site.

  • I sped up serde_json strings by 20%

    1
    blog.cloudflare.com Go wild: Wildcard support in Rules and a new open-source wildcard crate

    We’re excited to announce wildcard support across our Ruleset Engine-based products and our open-source wildcard crate in Rust. Configuring rules has never been easier, with powerful pattern matching enabling simple and flexible URL redirects and beyond for users on all plans

    Go wild: Wildcard support in Rules and a new open-source wildcard crate
    0

    Embedded Working Group Community Micro Survey

    blog.rust-lang.org Embedded Working Group Community Micro Survey | Inside Rust Blog

    Want to follow along with Rust development? Curious how you might get involved? Take a look!

    Embedded Working Group Community Micro Survey | Inside Rust Blog
    0
    blog.rust-lang.org This Development-cycle in Cargo: 1.81 | Inside Rust Blog

    Want to follow along with Rust development? Curious how you might get involved? Take a look!

    This Development-cycle in Cargo: 1.81 | Inside Rust Blog
    1
    blog.rust-lang.org Async Closures MVP: Call for Testing! | Inside Rust Blog

    Want to follow along with Rust development? Curious how you might get involved? Take a look!

    Async Closures MVP: Call for Testing! | Inside Rust Blog
    0