HN user

ThreeFx

219 karma
Posts3
Comments60
View on HN
Why I Write (1946) 3 months ago

That chart implies it is possible for somebody to write a work that wins the Hugo awards for best novelette and best novella, which I’d really like to see happen!

Now you’ve just shifted the problem to a much harder statement: proving the things the NN recognizes as a rose is actually a rose.

You cannot get rid of the enviroment, and the best thing you can do is be explicit in what you rely on. For example, formally verified operating systems often rely on hardware correctness, even though the errata sheets for modern CPUs are hundreds of pages long.

[dead] 3 years ago

Looks like a trivial outage, but this is apparently the only region that runs, among others, the US visa application service...

There are even cases where it is context-depedent: Maße (measurements) and Masse (mass). Both are written MASSE uppercased, but how do you know which one's which?

For additional fun: Swiss German doesn't use ß at all, so there is no difference between "in Maßen genießen" (to enjoy in moderation) and "in Massen genießen" (to enjoy in large amounts).

Not really, because for undecidable problems semidecidability can only hold one-way. If it held in both ways then the language would be decidable.

Take the Halting program for example: For a program p which halts, you can determine whether it will halt in finite time (because by definition it halts). However, there is no semidecidable algorithm for "this program runs infinitely long".

Nitpick: the reduction function is not one way, since an important property of hashes is that they are easy to compute.

99% of the time the answer is speed. It's just way faster to evaluate and build all of this at compile time than at runtime.

I understand both sides of the argument here - on one hand you have fast and unreadable code and on the other hand slower and more readable code. The problem here is 1. the leaky abstraction of characters and code points and 2. loss of type safety due to C's weak typing rules, which is a bit lost in the "hurr durr messy code."

Typing Is Hard 6 years ago

Since you can pass types to compile-time functions, yes that is correct. Take the example [from the 0.6.0 documentation](https://ziglang.org/documentation/0.6.0/#comptime) for example: At compile time the compiler has to figure out whether to type the `max` function using `u32` or `f64`. Since you can make the boolean condition arbitrarily complex the _type_ of max function called is undecidable in general.

I'm not arguing for or against undecidability in type systems, the page aims to be present the information neutrally.

Typing Is Hard 6 years ago

Best known is indeed meant as "most widely known" (although that may be true for only my little bubble). I think it's taught in most type theory / formal methods courses though. If anybody has facts for/against this claim I'd be happy to update the page.

What is 5D chess? 6 years ago

This looks amazing! Although I wouldn't be surprised if this was a forced first-player win.

I completely agree on the breaking issues, it is a _lot_ of work to maintain a website these days. In 99% of the cases I'd also agree with you that there should be _no_ reason ever to break e.g. a library used or something.

But the thing about certbot and TLS is that these things are security-relevant, and IMO security one of the only (if not the only) reason to break compatibility these days. TLS ciphers break, heck even the TLS protocol itself may reveal flaws later (see POODLE, BEAST, FREAK, etc.). That's why SSLv2, SSLv3 and TLS1.0 are deprecated: Not because there is a better protocol out there, but because the protocols are inherently insecure. (There is no huge flaw in TLS1.1 I am aware of, it uses MD5 and SHA1 under the hood for master secret derivation, but that's about the only thing).

I'm with you that maintenance is a big chunk of work, but that's IMO a price you pay for being in control. I've got a few services running myself, and honestly I forget about the boxes after setup and enabling auto-upgrades, so it isn't too breaking, at least for me.

I think this post misses the point of HTTPS completely. It makes HTTPS sound like some new technology, even though the HTTP protocol is still used, the difference being that the connection is encrypted and integrity protected.

And that said integrity protection is what is important in today's world: advertising is being injected into HTTP content by third parties which is a very bad thing IMO.

If updating your servers once-in-a-while is too much for you, maybe running a webserver isn't for you at all - there are certainly enough hosting providers which handle that for you.

Super interesting!

Although it sure would be nice to have explanations for amateurs such as me.