1,941 karma · joined March 30, 2011
If a stateful coin is permitted, the problem is indeed trivial; but if we start with the assumption that the problem isn't trivial, we can assume a "passive" coin more in line with the intuitions most people would have about coins.
Gauss would have used a pre-[1960](https://en.wikipedia.org/wiki/Karatsuba_algorithm) multiplication algorithm, with complexity at best O((log n) ^ 2).
Using an algorithm discovered in 2019 (cf. Harvey and van der Hoeven), it's possible to multiply in O(log n * log log n), if you have a lot of time. This is presumably optimal.
Thinking is not just "binary or not"; there are degrees. If exposing that group of people would be 90% pointless, it's not much less out of the question than if it were 100% pointless.
The other end of the scale is surprising too: 200 human years is less than 116 dog years.
I've never understood why anyone would want a higher-throughput terminal. Better latency I could see, but throughput? I'm not Commander Data. I can only read so fast. If my shell is dumping text at me faster than my terminal can render, it's because I catted something I shouldn't have.
I could see this happening with WASM once its system interfaces and SIMD intrinsics mature... "write once, run anywhere"?
I used to have diskless machines on my network set up the non-nix way: system directories full of tftp and pxe stuff; root directories constructed by an OS's installation procedure, and then customized somehow to work with an nfsroot. Later on, I wanted to make some changes but had no idea how. I hadn't taken enough notes of where everything came from and what it was doing. The files were still working, but without having documented their intent, I had to scrap it all. But documenting intent is laborious and fragile; you have to include enough detail that future you (or someone else) can follow your logic, and worse: keep all that in sync with the reality.
Since then I have fully committed to the Nix way. Now, the contents of my tftproot are built according to a declaration in my configuration.nix: the root directory in my TFTP configuration specifies a dependency on a PXE package, with some configuration applied. Not only don't I have to look through the built directories and try to remember what everything is, I never think about the built directories. The insight of declarative configuration is: if you fully document your intent, the system can take care of realizing it.
When I want to change a program I have written, I edit the source code (where all the intent is) and recompile it. NixOS is that for systems. I will no sooner go back to mutation-based system management than start changing my programs by taking a hex editor to the binary.
#!/usr/bin/env nix-shell
#!nix-shell -i /bin/sh -p ffmpeg_4 lsdvd python3
This is the equivalent of "#!/bin/sh", but with some package dependencies. Without nix, this script would implicitly require lsdvd to be available, increasing the complexity and fragility of system administration: if you scp the script to a different machine, the script is broken there until you install lsdvd. Even on one machine, you have to keep lsdvd installed (and remember what you have it for). Nix takes care of all that: when you run the nix-empowered script, it will make sure lsdvd is available in the script's environment. I keep an extremely minimal set of packages install system-wide (and nothing installed to my user environment), and declare dependencies in the places they're actually needed. I no longer think in terms of installed-or-not; everything is available.How would the food arrive at the store?
I used to buy food from a store with bulk bins. The store has a program where you can order the bags that they fill the bins from and pick those up directly--strong paper bags, usually around 25lbs. Lately I've found a mill and some other businesses nearby sell these bags of locally grown staple foods. By switching to the "upstream" bags, I've been able to choose local farms I want to support, nearly eliminate going to the supermarket (for produce I have a small, nearly-wild garden and do some foraging), and pay less for fresher food. Would it be possible to eliminate the 25lb bags from the loop? Probably, but they definitely reduce the friction of buying their contents, and they're made from a small amount (square-cube law) of material that makes a good sheet mulch.
It seems like they could have just said: malloc won't give you a pointer that overlaps with the storage of any live malloc'd object. Such a malloc is implementable without too much trouble. But instead, they gave a stronger guarantee--that all malloc'd pointers would be "unique". It would be unboundedly burdensome on the implementation to meet this property, so what do they do? Update the standard to offer the achievable guarantee? No! They add a new rule, ensuring that it's impossible to observe that the stronger guarantee is not met without doing something "illegal". Instead of getting their act together, they have elected to punish whistleblowers.
This would be accurate at room temperature, but under stovetop conditions wouldn't evaporation rate be determined mostly by the amount of heat energy added to the water?
This is completely backwards. The solution to cats not being at the top of the local food chain is not to kill anything that would eat them, but to end their participation in the food chain. That cats aren't an apex predator is a good thing, because the destruction of native species they accomplish isn't enough to motivate their owners to keep them inside.