skysight-inc/HackerNews huggingface dataset:
> Anyone working on a compiler has any input if there are plans, in the (unlikely) case the next WG decides to go sane on undefined behavior, how their compiler is going to address that new standard?

Disclaimer: I have contributed on my own time to one of the GCC frontends, so I guess I know a little bit more about compilers and the compiler development than the average Joe, but I wouldn't call myself an expert nor am I in a position to do any decisions wrt this for GCC. With that out of the way:

- You can see compiler development, particularly the optimizer stuff, as a game, where the standard limits what you can do, and the goal is to make SPEC CPU [1] run as fast as possible (your employer says which target CPU(s) you should focus on).

- The standard is the "contract" between the user and the compiler writers. Compiler writers do take standards conformance pretty seriously.

- If the standard changes, say to limit undefined behavior, compiler developers adapt to the new rules, and the game continues. No big drama here.

- AFAICT GCC developers wouldn't complain that loudly about "losing" previously allowed optimizations. There is (again, AFAICT) sympathy towards the viewpoint of changing the standard towards improving robustness.

- What you won't see is GCC, or any other compiler, doing it on their own without the standard backing them. That would just lose performance compared to the competition, and wouldn't help users write portable code anyway.

[1] Yes, there are other benchmarks too, but SPEC CPU is the most influential one.
Well, it's the average. I assume the savings are a lot higher for heavy web apps with more JS
Glad to see they open sourced their work.
If I may be so bold, I think that line will get pushed farther out every generation - who will simply accept past work as the then status quo ante. Just a hundred years back, cloning would have been considered morally reprehensible. Today, many people accept it as fact. Each generation only pushes the boundary just a bit (in the grand scheme of things) further; and only things far beyond the immediate realm of practical possibility seem thoroughly abominable.

There’s also the possiblity that the distaste that a culture/era has for such things is based on the extent to which it has been raised with religious values - which typically tend to deem the work of creation to be in the domain of the divine, not the mortal. As either distance from organized religion grows, or religions adapt their values, future generations exposed to such teachings may find such things to be acceptable as long as they’re not used for “bad” purposes.
> "...it’s built for how you actually use your phone, so videos are full screen and vertical."

Oh dear.
In many countries normal people are getting shafted by progressive tax system, that promotes being poor and they are tired of having their money being spent on people that don't contribute due to their laziness. It is hardly being privileged. Fix unfair tax system and people will not _have_ to use such services.
Sent to is not the same as sent from
A few advocates of safer systems programming languages, regardless of which ones, happen to use C++, are up to date with C++17 and follow up on ISO C++'s work.

Thing is, no matter how much better C++ gets, preventing some groups to use it as "C compiled with C++ compiler" is fighting windmills.
Reminds me of a quote of a comedian:

“I asked God for a bike, but I know God doesn't work that way. So I stole a bike and asked for forgiveness.”

-Emo Philips-
Thanks for the suggestion, but I don't have any blocking extensions installed. If you use Notion you can check for yourself: there is no way to scroll down a page with the down arrow if the content exceeds the screen.
Sadly a substantial number of Mac users are on os versions that don't support Metal. And a substantial number of then wouldn't even get support if they updated their OS.

So Metal-only isn't really an option for many projects, it's OpenGL + Metal or just OpenGL (for now).
I hate opinion pieces.
Do you carry chicken breasts uncovered in your cloth bag or do you just carry them in your bare hands?
We have to maintain an old version of firefox at work since one of our core systems is written in XUL.. I'm not kidding ..

This is not written by us btw :)
Yes, but then Democrat voting white collars would vote in Republican voting majorities and probably not enough to shift the vote, but the city would lose their votes and might go Republican. Can't allow that? So elites make sure Democrat voters stay in the cities.
Microsoft Buys Another Company You May Know
I'm actually using table inheritance at the moment for a project and it works quite well.

I use the table inheritance to manage common fields in the database more easily instead of having to define a separate table and reference it

For example the base model, which includes fields for external objects the row might reference and certain option fields or a ratings table that allows an object to include all the necessary fields for rating a product. This way I can also copy a lot of code since the structs on the other side also can share a lot of code and data.
I'm submitting this because the scale of death is sombering.

There are other projects in other areas that attempt to document dead migrants: The Missing Migrant project, from Arizona, is one. Here's an audio documentary about it: https://www.bbc.co.uk/programmes/p01v5sq8

And an article: https://www.bbc.co.uk/news/magazine-21029783
Ask HN: How much do you still rely on traditional email and calendar?
Quite right, as explained on its presentation.

https://www.youtube.com/watch?v=Yze693W4MaU
Do you know https://privnote.com ?

I think it is very easy and useful. It is great to have something like this on Keybase.
Ummm one nitpick. This is not abuse, it's the intended use of the phrase.

Its application is to achieve your goal or enforcing your decision regardless of superior's stance.

Other wording i know is (loosely transtalted) to put somebody against a fact (as opposed to decision).

It precisely because overriding a done deed is harder that arguing against or disallowing it.
Yep - discovery still looks to be hit and miss, that's the key for a YT competitor, not just the length of video.
I don't think you understand how big of a problem this was at Mozilla, and for Mozilla employees.
Let me explain a little about why you're being downvoted, instead of just piling on. In short, the tone, dismissiveness, and belligerence of your comment is not up to community standards. It is not a positive contribution to discussion here, and from the downvoting I think the rest of the community would appreciate it if you would take a different approach to posting in the future so that we can hopefully preserve a tiny bubble of courteous discourse.

> So apparently there's not really that much "common sense" out there at all, from what I gather. At least not on the part of scientists, anyway.

You're painting with an incredibly broad brush here. There are literally hundreds of thousands, if not millions of scientists out there. There are thousands of climate scientists alone! Scientists are a diverse bunch. They come from every country in the world, every religion in the world, every gender, height, weight, and sexual orientation. They don't speak with one voice, they don't operate with one voice, and they don't all share the same worldview. Science is an imperfect process but at least it's a shared commitment to open debate and following the facts where they lead. Tarring whole communities with perjoratives like "lacking common sense" is not useful to the discussion. Stop that.

> Dude, unlike you (I'm pretty sure) back in the day I used to actually _read_ various scientific studies on a regular basis; these were often in top journals, too. And after some years of this I got to where I routinely threw aside those studies, asking myself "How does this kind of crap get published, anyway?" The situation has only gotten worse since then, as far as I can tell.

This part of your comment starts with an insult, then transitions quickly into braggadocio, and then crescendos with derisive dismissiveness. Not helpful.

> As far as common sense and such goes, I'm getting pretty tired right now of people complaining about plastic pollution in the oceans which "lasts forever", but then in the next breath complaining about the breakdown products of that very plastic being a danger to wildlife. So which is it - "lasts forever" or "breaks down"? It can't be both. Much of this wildlife would probably be far better off if that plastic did indeed last forever; it would be unsightly, of course, but not all that dangerous.

Well, you brag about reading all these studies and then when it comes to arguing you don't actually refer to studies but instead into some kind of Catch 22 which you concocted on your own. Read some actual studies (like this one https://link.springer.com/chapter/10.1007/978-3-319-16510-3_...) and maybe debate their merits instead of trying to catch everybody in some kind of oversimplified "common sense" logic.
> As for Ghostery having a breach and exposing email, etc. that would require that I actually create an account for Ghostery. It works just fine without.

For now, sooner or later it's going to be mandatory for sure.
This says it all..

"Radio phone-ins, computer games – their shelf-life is short, they are very soon obsolete. A culture based on these things can have no memory – certainly not the burdensome sense of a preceding cultural inheritance which informed modernism and postmodernism. Non-reproducible and evanescent, pseudo-modernism is thus also amnesiac: these are cultural actions in the present moment with no sense of either past or future.

The cultural products of pseudo-modernism are also exceptionally banal, as I’ve hinted. The content of pseudo-modern films tends to be solely the acts which beget and which end life. This puerile primitivism of the script stands in stark contrast to the sophistication of contemporary cinema’s technical effects. Much text messaging and emailing is vapid in comparison with what people of all educational levels used to put into letters. A triteness, a shallowness dominates all. The pseudo-modern era, at least so far, is a cultural desert."
“Fall of the American Empire”
Doesn't a grid of patches contain much more information than just one more level of convolution?
Yup, totally agree with you, settings.py has always been a pain in the ass. Not really an acute one but the kind that is uncomfortable but not enough to make you do something about it.
At least on the case of DLang implementation, uses a DOM api to access to the values. https://github.com/Abscissa/SDLang-D/blob/master/HOWTO.md
Metaphors like this help people understand what's happening. If the message just vanishes that could be for any number of reasons. But with this animation it's clear that the message is being erased. Keep in kind not everyone is a hackernews-reading computer expert.
Isn't the reference compiler with trivial compilation equivalent to trying to make all UB implementation-defined where the implementation is the "trivial compilation"? For example this would preclude optimization based on aliasing rules which a lot of tight loops rely on.

float max (float f[], int length, int* max_index) {
float max_value = -FLT_MAX;
*max_index = -1;
for (int i = 0; i < length; i++) {
if (max_value < f[i]) {
*max_index= i;
max_value = f[i];
}
}
return max_value;
}

Take the code above. It obviously has a well-defined trivial compilation implementation even for cases where max_index aliases an element of the f[] array. There is a good reason that implementations are allowed to assume that doesn't happen: it produces better code in the case where the program has no bugs. Otherwise even at -O3, the implementation would have to read f[i] twice from memory as the value might have changed when *max_index was written if it wants the same behavior as the "trivial compilation" implementation.
Mi Book Pro
There are currently nine stories on the front page with less than 31 points (the count on this story currently) and few comments.

There's absolutely nothing unusual about it in fact.

China is the world's second largest economy by a large margin, and it's the #2 tech nation also by a large margin, there are naturally going to be increasing numbers of stories about China in general.

Please read the guidelines regarding your comment:

https://news.ycombinator.com/newsguidelines.html
This point is so good, and so subtle, I'll try to expand on it.
In tech teams the saying that "the best idea always win" is commonly believed. But the more experienced know that first and foremost groups are social and there are certain folks within the group who throw out an idea and everyone is willing to give it a shot. Whereas someone else in the group with less authority or social status or persuasiveness may have presented the same idea first only hears everyone saying "we're too busy", or poking holes in it not to make it stronger but to avoid doing it altogether.

How does this relate back to forgiveness over permission. Because with forgiveness the person is humbling themselves to the superior or group and falling back in line. That's more psychologically pleasing as the superior or group gets to reassert their will over a person again. Permission (especially if its not related to something they were assigned to do) can come across as diverting off course and pulling peoples will towards theirs, more so if the request requires action on their part.

Often the outcomes play out as much on power and us as social beings as we are rational.
I'm not familiar with Pandas but I'm guessing that its API is similar in style to numpy just by looking at the code snippet. I can't rule out that you might be an idiot, but it is not because you find that line of code confusing. The numpy API is horrific. Its abuse of operator overloading and undermining of expectations is shockingly awful. They should have just made a separate query language.
I think it’d be a lot of (evil) fun to form a crowdfunded entity with the sole purpose of suing companies that egregiously violate privacy norms. Given the level of support for the GDPR in many quarters, I think funding goals can be easily reached. Some lawyers might also want to jump on the bandwagon and make themselves a name (and profit).
Pretty much everybody who just clicks "I accept" by reflex.

So... pretty much everybody.
And so you know f(a b c) accepts floats, but what good is that if you don't actually know what a b c are. Which is the reason I hate the term type safe. It's type checked but the behavior may or may not be safe.
The alternative explanation (apart from the "watching TV while doing other stuff" thing) is that people are _also_ addicted to TV.

Smartphones are also active consumption, but there's clearly addictive stuff involved. And lots of mobile games play off of addictive tricks to get you into it!

I used to have a lot more time for gaming, and I would end up playing the same multiplayer game for a long time. But by the time I realized I didn't actually enjoy it, I would have already spent 6 months to a year religiously going to the game and grinding out sessions just to try and get some fun out of it. But most of the time it was just an addiction to the initial feeling, + loot box-y bullshit.

Just because something is a status quo doesn't make it normal/healthy/whatever.
For me the frame rate is struggling to keep it even remotely close to 60fps. It's certainly not smooth.

This happens in FF 61.0 Beta on an iMac 5K, but the issue applies to versions that date back to pre-Quantum days. I noticed the problem is more visible if large elements are affected by the transform effects, a smaller window renders those smoother for example.
I am really surprise that there is not a single mention to the Brave browser. I know it is not one of the major player, I don't even used myself as a daily driver, but still surprise nevertheless.
Can anyone comment on what's driving this sudden intensification of effort on the engineering side of things at Mozilla? Has there been a change of management or something? Presumably Firefox is still Mozilla these days ... will they be updating any of their other apps as well?
One thing you didn't have was the rat race involved in many modern multiplayer games.

When you want to be competitive and the top people are all playing all the time, you have no choice but to also play all the time. Doubly so when you have some sort of XP/loot system and some notion of resource consumption
Artificial Intelligence Course|AI Certification Training India
I tend to find that the weird behaviour of finding a tiny point in somebody’s post and using it to launch into some hypothetical about someone’s behaviour/attitude/mindspace is common on HN - it just jumps out a bit more when the hypothetical is regarding gender-related behaviour because that’s something we all know a bit about and often have strong opinions on.
Pretty much the only time I use chromium now is when I need to debug Websockets, since the traffic is impossible to see in Firefox. Really hope they fix https://bugzilla.mozilla.org/show_bug.cgi?id=1373639 some day.
Ask HN: Perpetual license or a recurring fee for self-hosted services?
Take something like Gitlab EE. It's a great product with a lot of value. However, they charge a monthly/yearly fee for you to host their software on your own hardware. That feels a bit uncomfortable, for whatever reason.

Wouldn't something like a one-time fee with a perpetual license, entitling you to just the version you buy (updates and support cost a recurring fee, because they are services) be better for the consumer? Someone serious about updates and support would still end up paying a recurring fee, but someone who wants just one version will have the option of permanently owning that version.

(Note: I'm just using Gitlab as an example; I do not expect/need/want them to change their pricing strucuture. I'm simply talking about alternate pricing models for self-hosted services.)
I guess you need to inform yourself about migration projects that use those products to bring COBOL codebases to modern platforms, where new features are then written in Java/.NET languages, while the old working code is left as is.
What's the Swedish version?
In our area, landfills are scarce, so local governments are incentivized to push waste into the recycling stream.

The result is that they trained people "when in doubt, put it in recycling". Now that recyclers don't want to accept the low grade stuff from them, they have a re-education problem on their hands.

I imagine the government employees who put out the bad information leading to this are all still employed and have probably been promoted.
For glass it only ever made sense to reuse it, like cleaning and filling bottles. Otherwise, glass is so cheap and easy to make that recycling makes no sense. It takes just as much energy to melt old glass for recycling as it is to melt sand down for new glass, and the sand is going to come in cleaner and with less contaminates than used glass.
All paint is based on white paint so....

Also Titanium Dioxide is in foods and many of them.
I did a project like this early 2000s, and it's amazing how far you get by just combining frequency filtering and knn-clustering. Nothing fancy required. really.
Why not just change that? You are already in the same host, you can write the port that the server bound to on startup to a file and just read that from the client.

I've implemented something similar and went through the same stage "I will wait until someone complains" and they will happen, just prevent them right now :)
During the post-Chernobyl period we had almost exactly this - vast amounts of European food production had to be discarded because it had absorbed excessive radioactive material from the "plume" from the fire which blew west over Europe.
I'd say white nationalists and the like have more than enough representation these days. They don't need the ACLU wasting limited resources when they've already got the support of the Whitehouse.
Ask HN: What is your current best development environment?
Check Chandler Carruth's talks about UB, he already has a couple of them.
It's high time Grammar
You should read the post you are replying to again, as it is well written and precise.

Basically, the intent of the proposal is understandable but it does not make sense as written.

The spec does not explain how to compile C code, it gives you a set of rules so that you could in theory take some piece of C source and a full execution trace and verify whether that trace was a conforming execution for that C code.

You take the example of the negative shift again, and it is addressed in the post you respond to : it's a perfectly fine proposal to demote negative shifts from UB to something less permissive to the compiler.

However, if you do so, of course, you have to frame what behaviors are accepted for a program doing such a negative shifts, just as you did in your post !

So let's say : arbitrary (but consistent) values are fine, termination is fine. That's great because it means we can still compile a shift to a CPU shift and there's no UB anymore. Ok.

Same goes for signed overflow.

However this is a case by case process, and you will absolutely not be able to ascribe meaning this way to many forms of UB. For example, as the GP said, storing through an invalid pointer.

If you want to compile a pointer store to a store instruction without runtime checks, then possible observable behavior include : other variable changing values, function call not returning to their calling context, and even of course running a full ROP chain exploit !

It's no surprise that in that case the specs says that the set of allowed observable behaviors is anything.
Are there any safe ways to play with BGP in a lab environment?
actually there are multiple ways of running bgp in a lab.
there are cheap variants that are routed into the internet with ipv6 and there are ways to just play without without talking to the outside network.

How expensive would said lab be to set up?
it heavily depends on what you want.
for a high available lab you would of course need multiple nodes/routers, depends on what you want to do.

for just playing with bgp, actually using bird http://bird.network.cz/ is good enough.

Actually ripe sometimes publishes articles with BGP.
Here is one that sets up a ANYCAST routing with BGP https://labs.ripe.net/Members/samir_jafferali/build-your-own...
Yep, same here. I use it as my regular browser. Occasionally I switch to Chrome for miscellaneous "other reasons", sometimes just to maintain separation between work and personal browsing sessions (I use FF for work).

I'm about to start a new contract doing React development again though. I wonder if I'll stick to FF or if I'll get dragged back to Chrome for DevTools support...
Wow, citing The Economist as neutral news, that's something. Probably about you.
And you can use it in a ETS match spec! This will allow to reduce copying of big maps in some use cases.
Usually that one works without words.
Intelligent Tracking Prevention 2.0 Enabled in Safari Tech Preview 59
The point remains, the above poster was presenting a false dichotomy. No one had to be fired. Employees may choose to quit, but that is a decision they make themselves.
Yet another Edge use-case - the last time I checked, only Edge supports Netflix 4K on Windows.