Sure but theres a level of uncertainty being expressed for a paid service that you don't see elsewhere.
Imagine if every time you booked an uber it was like "your drive may crash the car". Or whenever you ate at a restaurant, the waiter said "there is a chance the chef will poison you". Or your bank statement said something like "these numbers may be wrong".
you have strong opinions about this place for someone who joined less than 2 years ago... In my >13y active on HN I can tell you politics has always been present. It's just more likely for political topics to end up in flamewar, meaning they will get down ranked quickly. In general those stories don't stay long in the front page
Many of us do not particularly enjoy the work our employer has us do, nor believe in what the company we work for is trying to achieve. It's not like we get to choose its aims, and it's not like we have alternatives where we get to do so either. Our lives are spent working on someone else's goals.
> and it's not like we have alternatives where we get to do so either.
You can and should choose your employers. Saying you have no alternatives is disingenious. It's possible (and often worth it) to trade a big salary for meaning.
My employer significantly underpays us compared to the market, we could be (and many had been) earning multiple times more elsewhere, and yet we're happy to work there: we get reimbursed by meaningful work in a relaxed atmosphere.
In theory yes, but lots and lots of people will tell you how hard it is to switch jobs in real life, especially with personal circumstances.
A very simple example -- depending on your location, there can be very few employers you can choose from. Relocatiob is a major life decision.
Just talk to a few people, and that should be obvious.
Regarding the point in GP -- you can bet that most Meta employees don't believe in the company's vision, and they are just there for the (very good) paycheck. They are likely employable but choose not to.
That's fortunate for you that what you enjoy doing and get meaning from is capable of providing you a living via market income. That's not true of many others. I try to make time for what I enjoy doing and get meaning from. But for me as for many, it does not provide income.
There's always a comment saying "Don't ask for better, because someone else had worse". Fuck that. I want better and I want everyone else to have it too.
IIRC computation of the address is done by computing offset from base pointer as a multiplication in (32-bit) int, (like p + (i * sizeof (Foo)). The right term might overflow, but due to signed overflow being UB, the compiler is able to assume that it does not, so the transformation to do the arithmetic entirely in (64-bit) pointer space is valid.
Exactly. You as the programmer know that the loop counter won't overflow, and in general, essentially nobody would actually write it that way. But if you don't assume it can't happen, the possibility for signed overflow is everywhere in address computations.
This is also a major blocker for auto-vectorization. Can't coalesce a load of a[i], a[i+1], a[i+2], a[i+3] into a load of a[i:i+3] if there's a possibility that `i+1`, `i+2` or `i+3` wrapped around (thus causing your "contiguous" load to be non-contiguous). This is a big reason why you shouldn't use `unsigned` for loop counters, especially if they're going to be used as an index into an address calculation.
But surely the more natural approach than making this undefined behavior would be making the computation of a[i] take place in 64-bit pointer space rather than 32-bit int space? Why does the compiler need the freedom to emit nasal demons?
Re: "The multiplication that does not work", nothing in the quoted text seems to indicate that each multiplication should be interpreted in a different base, or anything like this. Certainly not that "four times [n]" should always have its result read in base 3n + 3 specifically.
It seems more likely to just be an absurd joke where Alice finds herself with an altered version of multiplication where 4n is interpreted as n + 7, causing multiplication to grow more slowly than normal, causing her to exclaim "I shall never get to twenty at that rate!" (a common exaggerated but non-literal use of "never", similar to "This is taking forever!" meaning "This is taking a long time!", not "This will literally never end").
The idea that we're instead supposed to think Alice thinks "four times 13 (decimal)" is to have its output read in base 42 (decimal), thus as "1A", considered distinct from "20", the latter being what would be "twenty", and thus she will literally never get to "twenty"... This just doesn't seem well-supported by anything in the text.
These links' mentions of quaternions are about a different part of the book (the tea party). Furthermore, even regarding that different part, your first link explicitly debunks the second link and disavows the quaternion connection the latter alleges. Your first link's whole point is to conclude "it is indeed very unlikely that Dodgson had the quaternions in mind when writing the tea-party chapter."
Why would you need to presuppose some inexplicably shifting number base to get the result of "four times [n]" always equaling n + 7? What does that get you over just more simply observing "For Alice, four times [n] has come to be n + 7"? Shifting number bases are a pointless supposition here. They don't explain anything better than what is already happening without them.
> The simplest explanation of why Alice will never get to 20 is this: the multiplication table traditionally stops with the twelves, so if you continue this nonsense progression—4 times 5 is 12, 4 times 6 is 13, 4 times 7 is 14, and so on—you end with 4 times 12 (the highest she can go) is 19—just one short of 20.
Gardner then writes "A. L. Taylor, in his book The White Knight, advances an interesting but more complicated theory" which is the changing base theory.
He ends with "For another interpretation of Alice's arithmetic, see "Multiplication in Changing Bases: A Note on Lewis Carroll," by Francine Abeles, in Historia Mathematica, Vol. 3 (1976), pages 183-84."
Up to 12? Is that a British/Anglosphere/Victorian thing? In Poland they teach up to 10, which is suffinient for arbitrarily large numbers because they also teach long division and how to combine it with times table. Technically up to 9 would be sufficient but 10 is such a nice round number.
It is yes. The anglosphere has historically been somewhat base 12 in currency, time and units of measurement.
Currency is now metric but there’s still a few base 12 things in common usage (feet and inches) in the us at least. Nobody’s gone to metric time yet and base 12 transfers smoothly to base 60 too.
Of course it's because of imperial units. TIL, thanks. But on a sidenote, I question the utility of knowing x11 and x12 when working with time. x15 could be useful, unfortunate they don't teach that (but I think most people with higher education learn it on their own).
Feet and inches long predate imperial units, and the US has never used the imperial system, btw. “Imperial” has a specific meaning and isn’t just “anything not metric”.
Anyway, base 12 is also built into most Germanic languages which have unique names for 11 and 12 (rather than something along the lines of “one-teen” and “two-teen”, which is more common in Romance languages IIRC.
Out of the most spoken romance languages, Spanish and Portuguese have distinct names up to 15, French and Italian up to 16, while Romanian does stop at 10. This suggests hexadecimal influence to me.
You're absolutely correct, the base is not specified. That's the joke. 1-1=0 would not be a joke. Perhaps it's better not to think of it as a joke. When mathematician reads what seems like nonsense, questions like "hmm is there a base where this would be true?" and "which bases is this true in?" pop up
I like this one:
Young mathematician goes to first grade and the teacher asks who knows what is 1+2. She stands up and says "I don't know what is it, but I do know that it's the same as 2+1 as addition is commutative in the monoid of natural numbers"
People said the same thing about a joke Douglas Adams made in his Hitch Hikers series -- that the (corrupted) Ultimate Question to which the answer was 42 ("what do you get if you multiply six by nine?") was a maths joke because 6x9=42 in base 13. Douglas Adams said this was nonsense.
unsigned three = 1;
unsigned five = 5;
unsigned seven = 7;
These actually get changed through pointers to consecutive powers of 3, 5 and 7 respectively. `three` is initialized to the 0th power of 3, but because only a single 1 is needed by the algorithm, `five` and `seven` are initialized to the 1st powers instead.
And by accident, 42 happens to be the first base after her multiplication gives the answer 19 here (when 20 would be expected), although it would produce an answer of "tenteen", not twenty.
reply