Programming Leftovers
-
Dirk Eddelbuettel ☛ Dirk Eddelbuettel: corels 0.0.5 on CRAN: Maintenance
An updated version of the corels package is now on CRAN! The ‘Certifiably Optimal RulE ListS (Corels)’ learner provides interpretable decision rules with an optimality guarantee—a nice feature which sets it apart in machine learning. You can learn more about corels at its UBC site.
-
Perl / Raku
-
Perl ☛ Get ready for the 2025 Perl and Raku Conference!
The Perl and Raku Conference 2025 is coming up June 27-29, 2025, and it’s set to be an exciting gathering for developers, enthusiasts, and community members alike. This annual event brings together some of the best minds in the world of Perl and Raku programming, and we can’t wait to see you there! For the first time ever, the conference will be presented in the Palmetto State, South Carolina! The technical and cultural hub of upstate South Carolina is the city of Greenville, home of the Lockheed-Martin F-16!
-
-
Python
-
ID Root ☛ How To Unzip Files using Python
Unzipping files is a common task in programming, especially when dealing with compressed data. Python, with its robust libraries, provides an efficient way to handle ZIP files. In this article, we will explore how to unzip files using Python, focusing on the built-in zipfile module and other alternatives.
-
-
Rust
-
LWN ☛ RVKMS and Rust KMS bindings
At the 2024 X.Org Developers Conference (XDC), Lyude Paul gave a talk on the work she has been doing as part of the Nova project, which is an effort build an NVIDIA GPU driver in Rust. She wanted to provide an introduction to RVKMS, which is being used to develop Rust kernel mode setting (KMS) bindings; RVKMS is a port of the virtual KMS (VKMS) driver to Rust. In addition, she wanted to give her opinion on Rust, and why she thinks it is a ""game-changer for the kernel"", noting that the reasons are not related to the oft-mentioned, "headline" feature of the language: memory safety.
The Nova driver is written in Rust in part because of the lack of a stable firmware ABI for NVIDIA GPU system processors (GSPs). Handling that in C is difficult, Paul said. The inspiration came from the Asahi driver for Apple GPUs, which uses a similar approach to handle unstable firmware ABIs. In addition, the Nova project can help prove Rust's readiness for the kernel by getting its drivers upstream, which will help make it easier for projects like Asahi get their work upstream as well.
Writing a kernel driver for a new device is challenging and takes time. For Nova, there is also a need to develop the Rust bindings for a kernel graphics driver. ""Luckily, a lot of this has already been done in Asahi"". There are already lots of bindings available, though they are not yet upstream; doing so entails figuring out if there are changes needed in those bindings and getting them accepted into the kernel.
-