Live data from Hacker News

ChakraCore GitHub repository is now open

blogs.windows.com

201–210 of 324 posts

Re: ChakraCore GitHub repository is now open

#201
post #31

Even if I'm in danger of stating the obvious, but MS really changed its approach to software. And it is incredibly great having competition in the JS engine market.

> MS really changed its approach to software Their open-source friendliness has unfortunately coincided with a decline of their respect for user privacy and choice (Windows 10). I find the "New Microsoft" bittersweet.

> Their open-source friendliness has unfortunately coincided with a decline of their respect for user privacy and choice (Windows 10). I find the "New Microsoft" bittersweet.

Similar to Google, Facebook, Twitter and others: They support open source, but not end-user control or privacy.

EDIT: Not a complaint, but it's very interesting that this was modded down. It's a simple, factual statement that I doubt the companies themselves would disagree with (though the truth is much more detailed).

Re: ChakraCore GitHub repository is now open

#203

Earlier quoted context omitted.

Since node.js is backed by V8, optimization decisions that the V8 team have made end up in developer code that runs in node.js. For example, Bluebird has a list of "optimization killers"[0] that many developers that I know use as a reference when making node.js libraries. However, these optimizations are V8 only, and so "edge-case of an implementation makes its way into programmers' habits". A quick example is "5.1.…

> optimization decisions that the V8 team have made Optimization decisions that V8 team have made are much more universal than it might seem. It is true there are sometimes strange artificial corner cases - but those are often either bugs or temporary solutions that are going to be replaced with something more generic as soon as they start to hurt too much code. > which ends up with having to jump through some hoops…

Optimization decisions that V8 team have made are much more universal than it might seem.

That's certainly possible, but maybe a competing VM can do better, but finds that everyone has coded specific V8 optimizations. They may be hesitant to push out their implementation. It may be a better optimization, but it causes existing code to run slower on their VM. Thus back to the original statement that implementation quirks find their way into developer code.

for (IWantThisVariableToEndUpOnGlobalObject in obj) { }

The variable has to be in the local scope and can't be in any higher or lower scope, not just a global scope (which your words acknowledge, but your code snippet doesn't). It's easy to end up sending the prop variable through a closure accidentally. Some real world examples[0][1][2]. Note that the solution requires pushing out to another function just to get around the deopt. With the sproutcore example being very clear, as they made the change specifically to satisfy the V8 VM.

[0] - https://github.com/paperjs/paper.js/issues/466

[1] - http://www.html5rocks.com/en/tutorials/performance/mystery/

[2] - https://github.com/sproutcore/sproutcore/blob/master/CHANGEL... (search "Removes V8 "ForIn is not fast case" warning")

Re: ChakraCore GitHub repository is now open

#204

Congrats to the Chakra team! I know that there was probably a good amount of work that went into making this happen.

Sincerely thank you. Yes, it was a lot of hard work, but we had fun. Looking forward to working with the community.

Disclaimer: I work for Chakra team.

Re: ChakraCore GitHub repository is now open

#205
post #134

Earlier quoted context omitted.

Even if microsoft told, that doesn't mean we should automatically trust it. The could be wrong or lying. I would prefer source code, but someone will eventually do packet captures to figure at least some of it out.

Go ahead and provide evidence that they're wrong or lying. People have been drum beating this privacy stuff for over six months now. But they seem to lack specific evidence, so now I invite you to present it.

You're the only one who has used the term "conspiracy" here. Again (for the 5th time you've been told) Microsoft has used exceptionally broad terminology to describe what data they are collecting. Since you're the one drumming on about "evidence" for a "conspiracy theory", why don't you provide a definitive list of the exact data they are collecting?

Re: ChakraCore GitHub repository is now open

#206
post #131

Earlier quoted context omitted.

The Windows 10 privacy thing is completely overblown. Most of the privacy settings that people are most worried about is tied into Cortana or more specifically what you allow Cortana to do on your behalf. You can simply choose not to use Cortana or to disable it entirely. Google Now & Siri support the same functionality but ironically don't give you the settings to disable it, so nobody bats an eyelid. Beyond that yo…

It is not overblown. I'm very happy that Microsoft is getting bad press. Hopefully this drives people away from Windows. This is the only way Microsoft "listens". When their revenue takes a hit. The primary issue with Windows 10 is how Microsoft is forcing people to upgrade to it. The secondary issue is with the lack of controls given to users. I don't want certain Win 7 machines that I own/maintain to ever upgrade t…

> As a customer of MS, I despise these methods, as I continue to use their OS, because there simply isn't any other alternative.

There are many alternatives to using Windows as your host OS.

Re: ChakraCore GitHub repository is now open

#207
post #194

Earlier quoted context omitted.

> putting it all up under MIT. There's little you can do to get more open and honest than that. I disagree. Node was OSS-licensed under GitHub back in the Joyent days, but the inner circle was still very much closed. PRs languished for months or even years. The leap from there to here for Node is, arguably, bigger than the leap from closed-source to open. Evidence: io.js had to happen.

But the thing he's saying is that having io.js happen was possible. It's also possible in this scenario too.

Forking is always possible, but it was only practical because the community could plausibly claim to be able to put as much or more effort into building out their fork than Joyent could theirs.

Microsoft is a much, much, much bigger company than Joyent. If they decide they want to take things in their own direction, they can throw an awful lot of programmers at making that happen. Which would make standing up a fork that could plausibly claim to be at least as actively developed as Microsoft's would be much more difficult.

Re: ChakraCore GitHub repository is now open

#208

Earlier quoted context omitted.

> Most of the privacy settings that people are most worried about is tied into Cortana or more specifically what you allow Cortana to do on your behalf In all of these discussions on HN, the only ones bringing up "worries" about Cortana features have been people defending Windows 10 (and now Windows 8 and 7) data collection. It's easy to disable and, if you choose not to use it, it won't collect data anyways. The sam…

> Actually it's not clear what else is being collected, because Microsoft won't disclose what's being collected. Is there evidence that only data about usage of Windows store apps is being collected? Microsoft has disclose what is being collected[0]. People just choose to ignore it and making conspiracy theories instead. So where is the evidence that Microsoft is lying? [0] https://technet.microsoft.com/en-us/library…

Thanks; that's very helpful and a good point. However, to 99% of Windows users, Technet articles are not accessible or realistic solutions.

Re: ChakraCore GitHub repository is now open

#209
post #120

Earlier quoted context omitted.

What do you mean by the, "edge-case of an implementation... makes its way into programmers' habits" as something that happens a lot in javascript. Maybe I'm not understanding but I read that statement and I don't see how that applies to javascript.

For example, a try/catch in V8 triggers deoptimization for the entire function it's in, while it might not in other engines. So this leads to many developers avoiding try/catch in performance critical code. This ends up with them avoiding it in general usage, which means that now "avoiding try/catch" is considered a general purpose performance tip in javascript, even though it might only apply to one engine (and the…

try/catch has pretty much no runtime overhead in SpiderMonkey unless an actual exception is thrown.

So yes, this is an excellent example.

Re: ChakraCore GitHub repository is now open

#210

Earlier quoted context omitted.

> * Mozilla gets by without one. Apple's approach for managing Swift, too.* Mozilla does have one. > Code committed by you to a Mozilla Repository, whether written by you or a third party, must be governed by the Mozilla Public License 2.0, or another license or set of licenses acceptable to the Mozilla Foundation for the Code in question. https://static.mozilla.com/foundation/documents/commit-acces... Swift has a mu…

Neither of those are CLAs. Please correct your comment. I'm particularly perplexed why you linked to that Mozilla document, for two reasons: 1. It says what it is, and as I said above, it's not a CLA. I've signed that document. It's required by everyone to get commit access to the Mozilla repositories. Here's how it works if you want to contribute to Mozilla: you send in a patch, they accept it, and say thank you. No…

> Neither of those are CLAs

I see your point now, but the steps are functionally equivalent. The person committing the code has to verify that it's licensable by the contributor under MPL2.0, which means copyright license, patent grant, etc.

The specific terms, however are down to the author of CLAs, not inherent to CLAs themselves. The Apache and the Google CLAs are fine, for instance, and look roughly equivalent to the terms of MPL 2.0.

I can see the user friendliness argument, but functionally it's the same thing. The swift CONTRIBUTING.md could just as easily put in some crazy line about patent negotiations.

> They usually take away a lot of the contributors' bargaining power. Microsoft's CLAs included.

Can you point out which part you object to specifically? On a quick read I don't see anything in here[1] that's not the equivalent of licensing your code to a project under a major OS license with a patent grant (e.g. Apache 2.0).

[1] https://cla.microsoft.com/cladoc/microsoft-contribution-lice...

Post reply on HN