285 karma · joined October 13, 2015
So parallelize!
Are there FDM printers with multiple nozzles extruding in the same plane? That seems like an obvious incremental step from regular single nozzle printers.
I would happily pay $10 or more for an accurate customized commute map. The rational value is likely way higher for families looking for an area to buy in which good commute times for all.
Note that this structure can also apply recursively, further subdividing an area.
This is adressed in the paper. The relevant part of the problem statement: "the longest distance one could drive for on the earth without encountering a major body of water"
and about the Dead Sea: "Guy Bruneau of IT/GIS Consulting services calculated [5] a path from Eastern China to Western Liberia as being the longest distance you can travel between two points in straight line without crossing any ocean or any major water bodies. However, the path crosses through the Dead Sea (which can be considered to be a major water body), and hence does not satisfy the constraints originally set out."
Because astronomics is involved it feels like one of those things that either happens all the time or has a 1 in 10^100 chance of happening.
Is there another plausible explanation here? Some kind of eclipse maybe.
Even if there no external libraries and only pure machine code, that machine code still runs in an environment defined by hardware components, and those hardware components have a lot of thought and effort behind them.
At what level is it no longer cheating?
This way you can perform calculations on fp32, but then have to sanitize the output before storing it back in the data structure. One way to use the type system to enforce sanitation could be if values in a database are of type nnfp32, and the only way to produce a nnfp32 is using a function which returns Option<nnfp32>, returning Some only if the value is not NaN.
Just as some languages (like Rust) provide a way to say that a variable can't be null, I think it would make sense to have a floating point value that can't be NaN. Comparison of two non-NaNnable floating point value can then just return a boolean, because we know it will never fail.
A dump of memory (several kilobytes, megabytes or whatever) is inherently big endian: it proceeds from the base address and goes up.
It only looks "inherently big endian" when you print bytes on each line starting from the left. This way of printing numbers makes little sense as you end up with some kind of mixed-endian where the bytes are ordered one way and the bits another way.Start each line with bytes from the right instead to make the bytes and bits numbering consistent, and you can print large little-endian dumps with all bits and bytes are where you expect them to be.
Little-endian is slightly more confusing for humans
I've heard this before, but the reason is that you view hex data and list numbers left-to-right as if they were letters. They are not.0x12345678 stored big-endian, numbering bytes left-to-right:
12 34 56 78
Looks good, but I think that this is actually more confusing, because when you number the bytes and bits you will see that the bytes are written left-to-right, while at the same time the bits are written right-to-left.The solution is to show dumps with bytes numbered right-to-left. This is coherent with how we number bits, and also how we relatively position digits in any other number.
0x12345678 in little-endian, but written right-to-left:
12 34 56 78
Now the numbering of the bytes is consistent with the numbering of bits. You can easy see that bits 0-7 of the bits interpreted as a 32-bit word belong in byte 0, while bits 16-23 belong in byte 2.