Thanks. I assumed that option would be a major footgun (since accidental copies can be very expensive) but if it works for Swift, it can't be that bad.
I believe the reasoning is that aerosol would have ultimately spread everywhere, including on the AC itself, while ballistics can be heavily influenced by airflow, but are still limited in range.
I think the definition of ballistic means that gravity is the dominant force governing its path through space. So if it is "heavily influenced" by airflow it is by definition not ballistic.
Then again, it's not aerosolized as it didn't diffuse homogenously into the space. It's somewhere in between.
Eh, different fields can have different definitions for the same word, and that's okay. If I tell a chemist that carbon is a metal, I would get a funny look. If I tell an astrophysicist that carbon is a metal, it is perfectly reasonable. Within the field of astronomy, metals are any element other than hydrogen and helium. There may be a similar difference in definitions here
You've really got three regimes. Really big things are ballistic in your sense that the dominant force is gravity. Smaller things are also sensitive to bulk air movement. Really small things aren't affected much by gravity, and brownian motion is more important.
When these guys are saying "ballistic", they mean that the droplet is big enough that gravity is important, and that it's going to hit the ground in a reasonable amount of time and not hang around in the air until convection/diffusion spread it evenly throughout the room.
I think I've never noticed that red-yellow in 40+ years of living in Germany. Interesting. Maybe it's a good thing I never get to drive a car these days.
Reading through https://bazel.build/designs/skyframe.html, this sounds pretty much like what would be possible with the aforementioned recursive Nix and content-addressed paths. Bazel might still win in practice since the overhead of a Nix build is pretty high, which gets even more important when you do them recursively for each file.
You can convert a `String` into a `&'static str` using only safe stdlib functions via `Box::leak(s.into())`. This uses `unsafe` internally, of course... but so does almost any code.