HackerTrans
TopNewTrendsCommentsPastAskShowJobs

a1369209993

no profile record

comments

a1369209993
·3 yıl önce·discuss
That's because they botched the proof. You need to sort the articles not by interestingness, but some separate canonical property, like creation date. Then you get a (here chronologically) first uninteresting article, which is interesting.
a1369209993
·4 yıl önce·discuss
Comparing corporate decision makers to devils is unfair and bigoted against devils.
a1369209993
·4 yıl önce·discuss
> The game doesn't actually recognize any of the stuff you mention.

To be fair, neither does real life. Real life shops, jails, etc, are just collections of atoms with certain emergent properties resulting from how players have set them up.
a1369209993
·4 yıl önce·discuss
The techinical term is "genericised trademark" IIRC. Same goes for "Civilization" upthread, and for things like "Tetris" or (edit: to the extent trademark offices are corrupt enough to register it in the first place) "Chess".
a1369209993
·4 yıl önce·discuss
> > Can they selectively drop packets

> Absolutely not. That practice should literally be illegal.

This is correct for selection based on the remote endpoint. OTOH, it's very reasonable to drop packets selectively based on the local endpoint, so that packet loss affects customers who are actually using 90-100% of advertised bandwidth (eg for streaming), but not those using <10% for stuff like checking their email. (Arguably, local-selection should be required, to prevent the ISP from making anti-net-neutrality FUD along the lines of "my neighbor's Netflix is making my email not work" actually true.)
a1369209993
·5 yıl önce·discuss
> > for an experienced programmer a terminal renderer is a fun weekend project and far away from being a multiyear long research undertaking.

> You shouldn't automatically assume something is actually bad just because someone shows a [vastly] better proof-of-concept 'alternative'.

Apparently you should. I can confirm that the first quote is a appropriate assessment of the difficulty of writing terminal renderer. Citation: I did pretty much exactly the same thing for pretty much exactly the same reasons when (IIRC gnome-)terminal was incapable of handing 80*24*60 = 115200 esc-[-m sequences per second, and am still using the resulting terminal emulator as a daily driver years later.
a1369209993
·5 yıl önce·discuss
Well, I was talking about 6000-line bash scripts, but yes, perl does come up fairly often as well.
a1369209993
·5 yıl önce·discuss
How is that hyperbolic? 600 lines is pretty short for a (longest-involved-in-this-project) un-managable mess of a production-critical bash script. I've seen several well upwards of 6000 lines.
a1369209993
·5 yıl önce·discuss
If the regex engine doesn't support indexing into a arbitrary (indexable) data structure, that's a deficiency in the regex engine, not in one particular such data structure. You can tell this isn't a deficiency of ropes, because the exact same thing would happen if you used[0] hash tables or b-trees.

Search might be slower with a more complicated lookup (versus a probably-inlined-and-otherwise-optimized pointer-plus-index addition), but that wasn't the problem described; the problem decribed was that non-array lookups weren't supported at all, and search required copying the data over to a array before the regex engine would deign to touch it.

0: for a example, not a suggestion that they would be a good fit for a text editor
a1369209993
·5 yıl önce·discuss
> That offsets a lot of performance gains ropes are supposed to provide.

It sounds like that offsets lot of performance gains the rust regex engine is supposed to provide, actually.
a1369209993
·5 yıl önce·discuss
> why the system isn't clocking higher if the cooling system is running so comfortably.

Because there's a upper limit on how much power (voltage, clock rate, etc) you can shove though a CPU before it starts malfunctioning or getting damaged by purely electrical effects, no matter how effectively it's cooled?

It's entirely possible Apple has set the nominal limits fraudulently low for business reasons, but there are actual physical limits here, and depending on how the CPU is designed/optimized, it's quite possible that it's easy to build a cooling system that significantly exceeds what those limits allow to be demanded of it in a significant range of cases.
a1369209993
·7 yıl önce·discuss
> Everybody was informed and OK.... Except

It's not clear (and honestly, not likely) that that was true either, but if it was:

> I'd have fine the parents a minor fine, too

This is child abuse, and should be prosecuted accordingly, including jail time.
a1369209993
·7 yıl önce·discuss
Such a ad blocker already exists; it's called NoScript.
a1369209993
·7 yıl önce·discuss
I wouldn't consider the second example telling them, and I wouldn't consider the first you, but I can see how it might be interpreted that way, so fair point.

Ultimately, though, they're periodically asking you for money; if you decide to stop giving them money, then things need to work out such they don't get any more of your money.
a1369209993
·7 yıl önce·discuss
> assuming the company [...] stops charging you

This is what disputing charges is for. Once you have told them, even once, that you are canceling your subscription, any further charges are fraud and you should respond accordingly.
a1369209993
·8 yıl önce·discuss
> So what's really happening is the type expressions are pretending to be "just everyday python", but actually they have arbitrary restrictions (cannot be functions? need to work via overriding `__getitem__`?) that neither you nor I were aware of.

Yeah, that sounds about par for the course for bolt-on static-y typing in languages that aren't supposed to be statically typed.
a1369209993
·8 yıl önce·discuss
> Is there a utility to having your types and your values in the same namespace?

Well somewhat[0], but the main putative benefit would be having types be valid expressions in the target language, since you can do type-checking with function decorators, and generally interact with types useing the normal language mechanism for interacting with values, rather than some horrid bolted-on piece of crap like C++ templates.

  Server = Tuple[Address,ConnectionOptions] # array subscipt might not the best choice here, but it works
  UserId = NewType('UserId',int) # ordinary function call
  Scalar = int | str # could be equivalent to Union[int,str] with appropriate value of Type.__or__
0: for example:

  def intBit(N):
    if N==0: return type(None)
    if N==1: return Bool
    if N>INT_WIDTH: return long
    return int
a1369209993
·8 yıl önce·discuss
Regarding #2, the python code has the arguable advantage that (with appropriate variables in scope) it's valid standard python code[0] that could evaluate to (a representation of) the desired type, whereas the typescript isn't valid javascript code, and I don't think it's a valid (value-level) typescript expression either.

3 and 4 are disappointing though.

0: I'm assuming the extra [ after Callable is a typo.
a1369209993
·8 yıl önce·discuss
The obvious solution would be to earmark some number of dedicated "china laptops" that will never be trusted with anything important, and get reused everytime someone has to visit China. If they get backdoored... who cares? They can only spy on things that were getting spyed on anyway due to being in China.