improbable22
Joined 9 years ago
Joined 9 years ago
If by indexing you only mean adding offsets to pointers with your bare hands, this is possible but discouraged. Because you'll produce a buggier and less general version of exactly what already exists. In this case, reversing an N-dimensional array, along any M of its axes, with arbitrary offsets -- there are a lot of ways to get that wrong.
Here's a nice recent example: a new reverse!(A; dims) function, which is fast and works on arrays with any number of dimensions. And is completely indifferent to where the indices start:
https://github.com/JuliaLang/julia/pull/37367/files#diff-eb9...
English in general makes this distinction: "He is fewer than 6 years old" is simply a mistake, while "less than 6 years old" is fine. (I think some dialects use "fewer" less often, in general, but would be pretty surprised if any prefer it here.)
Surely the point of any language at all is to abstract away some details of the underlying hardware. Both for portability and to make things easier for human brains. How much you should abstract away obviously varies, based on what you're trying to do, and on how varied the hardware is.
And it depends on how much computation & memory you can give your compiler. One reason new languages can have nicer abstractions is that they don't have to compile on 1970s hardware.
One counter-example is Mathematica. I can mutate any object any time I like, and doing so is extremely common. Yet under "pointer" its help tells me about some unicode symbols, and some GUI stuff about mouse pointers.
In reality, some of its lists are dense memory like C, some contain arbitrary objects (such as expressions, or high-precision numbers), but these implementation details aren't part of the language, and most users never know them.
Yes I know, and not just Europe. But my comment there was specifically about contours, i.e. height data from SRTM. I'm not aware of any project to crowd-source stereo-pair contour drawing, but if you know of one, I'd be interested to have a link.
But still much better than Google maps, which seems very much for cars (at least outside of cities).
On MapOut at least, you zoom in too far & then click the tile you don't have. On a good network there's a little more friction than on (say) google maps, but not so bad. A few MB, never hundreds of MB.
(And on a bad to nonexistent network, it's golden to be absolutely sure that it still has what you looked at yesterday.)
But if the stars have been there forever, the comet is effectively in an oven of uniform temperature. The equilibrium state at which it radiates heat as fast as it gets it has the comet's surface the same temperature as the rest of the oven. So it glows.
Likewise "went to school" (as a scoolchild) vs "went to the school" (to collect someone, or to teach). "At university" (a student) vs "at the university" (physical location, for any reason). "Went to prison" (as a criminal) vs. "went to the prison" (to visit his brother, or to fix their telephones). "Does she go to church?" (to church services) vs. "did you go to the church?" (to see the stained glass).
"Go to the doctor" is a bit different, the doctor isn't an institution, he's a person. Although I think that implies you went for medical reasons, if you stopped by to pick up some paperwork, you might say "I have to stop at the doctor's" i.e. his rooms. But maybe that's also because you would probably talk to the receptionist anyway. But "went to the barber" implies you had a shave, while you might "stop at the barber's" to pick someone up.
If it did, the same thing would happen not just for stars, but for all sorts of things. If you position a computer screen on a hiltop far enough away that, on a dark night, you can just make out whether it's on or off, then your eyes are getting about 6 photons per second. It doesn't matter whether these come from a million separate pixels, or from one light-bulb of similar total brightness.