Hacker Newsnew | past | comments | ask | show | jobs | submit | BoardsOfCanada's commentslogin


It would be so nice to see how many zero-days are going away for bad players right now.


I have to say that it was surprisingly snappy when selecting a train or scrolling the map.


A lot of things are only true if P != NP but says nothing about P being within epsilon of NP.


Not quite sure what you're suggesting here; perhaps it's satire?

If P!=NP then it is arbitrarily smaller, for the same reason that e^x > Cx^N for any constants C and N, as long as x grows big enough. There is no epsilon in that can overcome that, no matter how big you make it, because x will eventually dominate the equation.

There are a lot of cases where pragmatically x remains small enough that it doesn't matter, and a P algorithm will give you an answer more quickly. (For the same reason I only ever write bubble sorts: I would only write my own at all if I knew that the list would never be bigger than 10. Even then it's only when using the library is too much trouble for some reason.)

But we care about P and NP when the number can potentially be very, very large.


No, it's not satire. The difficulty of finding the optimal solution says nothing about what it takes to come within 99.999% of optimal with 99.999% probability.

So I'm not talking about the number of steps needed to prove optimality with a correct P algorithm versus an exponential one.

I'm only talking about how this applies to the efficient market hypothesis.


In case P /= NP the gap doesn't necessarily have to be exponential, just superpolynomial (e.g. n^loglogn).


Obviously, in his example it would be RateLimiter not Option<RateLimiter>, so no check necessary.


I think the author can propagate RateLimiter instead of *RateLimiter, making it exactly the same


No, because RateLimiter is then copied on passing it around (pass by value).

That is problematic for two reasons: it might be a large type, so copying might be expensive. Second, more likely, it might violate invariants in your domain. For a rate limiter, this might mean accidentally copying around some internal state like a mutex, which then exists n times instead of 1 time, which can represent a problem (e.g. if you want to internally limit whole-app concurrency toward Redis).


You can see the code

Clearly is not large. Second the child object is a pointer so does not violate anything

And if if if... I am sure we can look for new constraints in any language


you still need to unpack that option somewhere.


_If_ you start out with an optional, and even then only once in the code path.


I thought these were just about limestone blocks being transported from quarries in Tura to Giza.


aliens had to hire humans to move the stones?


Former Ferrari chairman Montezemolo:

“I cannot say what I really think: I would harm Ferrari. We risk the destruction of a legend. So sorry. Take the Prancing Horse off. At least the Chinese won’t copy this car”


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.


Thanks! Do you mean long during the current session or counting all sessions since it started?


It was a conversation crossing raw IVG data against a symptom phenotype (dna analysis) which went on for a good while


As an MB owner this delights me.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: