news
Programming Leftovers
-
Peter Hofmann ☛ Regarding Release Notes
My understanding of the two is as follows:
• Changelogs: A very detailed list of changes. These days, we don't have to talk about changelogs anymore, I think, at least not when it comes to writing software -- because virtually everbody uses a version control system like Git, and the commit history is the changelog now.
• Release notes: A summary of the changes in a certain release, often paired with migration guides.
This blog post focuses only on the latter.
-
Daniel Lemire ☛ Parsing JSON at compile time with C++26 static reflection
Normally you ship this file alongside your program, open it at startup, read it, and parse it. That is a lot of work for data that never changes. What if the file is fixed at build time? Could the compiler read it, parse it, and bake the result directly into the executable as a constant?
With C++26, the answer is yes. We need two new ingredients, all of which are usable right now with the latest version of the GCC compiler (16).
-
[Old] Bruce Dawson ☛ Intermediate Floating-Point Precision
If you answered ‘double’ and ‘float’ then you score one point for youthful idealism, but zero points for correctness. The correct answer, for zero-idealism points and forty two correctness points is “it depends”.
Read on for more details.
-
Dirk Eddelbuettel ☛ Dirk Eddelbuettel: rbenchmark 1.0.1 on CRAN: New(ly Adopted) Package!
Quick note to share that rbenchmark is back on CRAN! The rbenchmark package makes it easy to benchmark (and compare) simple R expressions.
-
Rlang ☛ New CRAN Packages: signal or noise?
If you are reading this post on R-bloggers, you will probably know that I have been publishing my selection of the “Top 40” new R packages on CRAN for quite some time.
-
Python
-
Eli Bendersky ☛ Plugins case study: Pluggy
Recently I came upon Pluggy, a Python library for developing plugin systems. It was originally developed as part of the pytest project - known for its rich plugin ecosystem - and later extracted into a standalone library. You're supposed to reach out for Pluggy if you want to add a plugin system to your tool or library and want to use something proven rather than rolling your own.
In this post I will share some notes on how Pluggy works, and will then review how it aligns with the fundamental concepts of plugin infrastructures.
-
-
Java/Golang
-
Nicolas Fränkel ☛ double, BigDecimal, or Fixed-Point?
There is an evergreen debate in the Java world: should you always use BigDecimal for money?
The short answer is no. The real answer is: it depends on your computational context: the precision you need, the rounding rules you must follow, and the performance budget you have.
-
-
Rust
-
Hackaday ☛ Why Not Yserver? It’s Xserver, But Rust-y. [Ed: Misleading headline, it is slop, not a real project and Rust is a side distraction from that; Slop is a hallmark of worthless trash, disguised as "innovation" (something to be avoided all in all)]
You can also use yserver via Xwayland or even Xorg. Speaking of Xorg, [joske] has run the X.Org X Test Suite (xts5) against this proposed successor, and it currently scores 66.2%, which seems pretty good considering the project explicitly does not plan to copy all of Xorg’s functionality.
-