• 1 Post
  • 27 Comments
Joined 2 years ago
cake
Cake day: August 18th, 2023

help-circle



  • Every single time I’ve tried to work on a file using tabs, I’ve had to configure my tabstop to be the same width the original author used in order to make the formatting reasonable. I understand that in theory customizable tabstops is preferable, but I’ve yet to see it work well.

    (For what it’s worth, I think that elastic tabstops, had they been the way tabs worked in text files to begin with, would have been far preferable.)







  • They did consider making environment-manipulation functions atomic; the problem is that there’s simply no way to guarantee that everything that can manipulate your process’s environment is actually beholden to whatever atomic interface Rust provides. I could be misremembering, but I think there was even some discussion with glibc maintainers about whether this could be made safe, and the answer was basically “haha no.”








  • I wrote a longer reply with links, but somehow it didn’t actually post; so this will be shorter and unsourced. Sorry about that.

    There already was a discussion, over the course of several years, about whether to add Rust to the kernel. Linus merged rust/kernel into the mainline in 2022, and it was released in Linux 6.1. The patch that Hellwig opposed did not introduce Rust, it just added more Rust.

    Hellwig also made it pretty clear that he wasn’t open to discussion. If you read the thread, there were numerous attempts to “talk things over.”

    You may be right that Marcan’s posts on Mastodon added nothing productive, though I honestly think there’s some value in sharing behavior like Hellwig’s with the broader programming community. But his posts in the actual mailing list seem pretty sensible, albeit provocatively worded.

    Also, in case you didn’t know, similar behavior (to Hellwig’s) led the primary Rust for Linux maintainer, Wedson Almeida Filho, to step down back in August. Marcan is correct that the anti-R4L maintainers are successfully demoralizing the R4L people.




  • The first part is confusing what “middleware” means. Rather than “duplicating” functionality, it connects libraries (I’m guessing this is what you meant). But that has nothing to do with a language being compiled versus “directly executed”, because compilation doesn’t connect different services or libraries; it just transforms a higher-level description of execution into an executable binary. You could argue that an interpreter or managed runtime is a form of “middleware” between interpreted code and the operating system, but middleware typically doesn’t describe anything so critical to a piece of software that the software can’t run without it, so even that isn’t really a correct use of the term.

    The second part is just…completely wrong. Lisp, Fortran, and other high-level languages predate terminal shells; C obviously predates the shell because most shells are written in C. “Most original code” is in an actual systems language like C.

    (As a side note, Python wasn’t the first scripting language, and it didn’t become popular very quickly. Perl and Tcl preceded it; Lua, php, and R were invented later but grew in popularity much earlier.)