A lot of people and businesses use debt to finance the things they want to do. (Buy a home, build a new facility, pay back management). When money is cheaper, people do more.
If you can issue at 6% instead of 7%, your interest expense on that debt has decreased by 16%.
I don't think anyone expects say the fed funds rate to go to 1%, but it could go to 3.5% or 4%. [0]
For memory (ROM / RAM etc) the 2^x convention applies. 1GB = 1024MB etc.
For background storage (harddisks, USB sticks, optical, tape etc), that used to be true as well. But long ago manufacturers' marketing corrupted this into the decimal 1G = 1000M meaning.
But distinction can be fuzzy sometimes. And subject to abuse. So when in doubt: read the fine print.
But my point was that Gibibytes did not replace Gigabytes.
It was just that some hard drive manufacturers successfully introduced marketingspeak into the computer world. It wasn't that the computer world all agreed upon switching to SI units.
I once worked for a firm that used NetworkSolutions and spent a lot of time in their online portal and with their support. I do not have anything nice to say about them, their services, or their billing practices.
Christenson is the one who coined the term “disruptive innovation,” and he gave it a precise definition. That definition includes taking on low-value markets and gradually expanding into more lucrative, higher-value markets. The established players flee upmarket, ironically making some of their best profits as they do, and are eventually squeezed out entirely.
C++ lets you write anything you can imagine, and the language features and standard library often facilitate that. The committee espouses the view that they want to provide many "zero [runtime] cost," abstractions. Anybody can contribute to the language, although the committee process is often slow and can be political, each release the surface area and capability of the language gets larger.
I believe Hazard Pointers are slated for C++26, and these will add a form "free later, but not quite garbage collection" to the language. There was a talk this year about using hazard pointers to implement a much faster std::shared_ptr.
It's a language with incredible depth because so many different paradigms have been implemented in it, but also has many pitfalls for new and old users because there are many different ways of solving the same problem.
I feel that in C++, more than any other language, you need to know the actual implementation under the hood to use it effectively. This means knowing not just what the language specifies, but can occaissionally require knowing what GCC or Clang generate on your particular hardware.
There are Java implementations in Java like Jikes RVM.
Garbage collected languages can be easily bootstraped, it is a matter of what intrisics are available, and what mechanisms are availble beyond plain heap allocation.
Oberon, Go, D, Nim, Modula-3, Cedar are some examples.
If you can issue at 6% instead of 7%, your interest expense on that debt has decreased by 16%.
I don't think anyone expects say the fed funds rate to go to 1%, but it could go to 3.5% or 4%. [0]
[0] Fed funds: https://fred.stlouisfed.org/graph/?g=1mM6j [-] Const 10yr Treasury https://fred.stlouisfed.org/graph/?g=1nYkd