Live data from Hacker News

Temporary fork enables Node.js to optionally use the Chakra JavaScript engine

github.com

51–60 of 104 posts

Re: Temporary fork enables Node.js to optionally use the Chakra JavaScript engine

#51

It would be cool if the JavaScript engine was interchangable in NodeJS and IO.JS so you could pick Chakra, V8 or SpiderMonkey very easily. SpiderMonkey is faster than V8 these days on a lot of benchmarks.

For anyone who wants to run Spidermonkey with Node, JXcore is a Node fork that enables this.

Re: Temporary fork enables Node.js to optionally use the Chakra JavaScript engine

#52
post #29
post #21

Earlier quoted context omitted.

This isn't a limitation of Explorer, but actually is a very well documented part of the Windows API. MAXPATH has always been 260 characters. https://msdn.microsoft.com/en-us/library/aa365247(VS.85).asp...

How long will Microsoft wait till the fix MAXPATH and other limitations? (and various other Win32 limitations that are usually a legacy porting helper thing from Win16). There would have been a good point with the introduction of Win64API - but Microsoft forgot about it and was apparently busy with something else.

I doubt it's too high up on the list of priorities. It would require really careful work to work in a backwards compatible way (there are almost certainly a tonne of apps that expect I guess the main thing is that it's one of those 'who cares' problems. The only time I've ever seen this limitation being complained about, it's by people who've had problems with npm.

That directory structure is undoubtedly horrible and is not mirrored by any other piece of software that I've seen.

Re: Temporary fork enables Node.js to optionally use the Chakra JavaScript engine

#53
post #5

"This temporary fork enables Node.js to optionally use the Chakra JavaScript engine on Windows 10, allowing Node.js to run on Windows on ARM." (the submission title has been updated after I posted this, was initially "MS releases a fork of Node that uses the Chakra JavaScript engine instead of V8") Looks like they intend to merge back with node mainline... ? EDIT: Found this: http://blogs.windows.com/buildingapps/201…

The question is why should node/io.js take such a pull request. It adds support for an irrelevant platform and would add the burden of maintaining the 'wrapper' which will probably break on every v8 update.

Re: Temporary fork enables Node.js to optionally use the Chakra JavaScript engine

#54
post #5

"This temporary fork enables Node.js to optionally use the Chakra JavaScript engine on Windows 10, allowing Node.js to run on Windows on ARM." (the submission title has been updated after I posted this, was initially "MS releases a fork of Node that uses the Chakra JavaScript engine instead of V8") Looks like they intend to merge back with node mainline... ? EDIT: Found this: http://blogs.windows.com/buildingapps/201…

> They're doing this to be able to run Node.js apps on Windows 10 ARM (on which V8 supposedly doesn't run?) V8 definitely has an ARM runtime, so maybe this is a result of the restrictions on what's allowed to run on the platform? (e.g. iOS and Windows Phone don't allow JIT compilers except the ones provided by the platform itself)

I'd guess, at the very least, that it doesn't support the Win/ARM ABI.

Re: Temporary fork enables Node.js to optionally use the Chakra JavaScript engine

#55
post #50

Earlier quoted context omitted.

Are you suggesting that the remarkable disparity in performance was DOM specific? Strange because I used a very common method appendChild() and I was under the impression that both browsers had optimized their respective inner workings a long time ago to the point that we should not notice such divergence in performance.

Yes. DOM manipulation in all major browsers is implemented in C/C++. The JS engine is just a wrapper; any noticeable performance difference in DOM manipulation is almost certainly due to differences in the underlying layout engine and not in the JS engine.

Well, there's one way in which the JS engine effects it: how efficiently one can call into C++ from JS. Mozilla have done a lot of work to reduce the cost of that in SpiderMonkey.

Re: Temporary fork enables Node.js to optionally use the Chakra JavaScript engine

#56

Interesting that Microsoft forked Node instead of io.js. The Microsoft repo says, "This branch is 16 commits ahead, 29 commits behind joyent:master".

I work for MS, right now we're working on win10. Some of the UI is written in html/js now, so I'm not surprised by this at all. I'm guessing we'll see some native node.js apps on windows in the future.

Re: Temporary fork enables Node.js to optionally use the Chakra JavaScript engine

#57

Earlier quoted context omitted.

> They're doing this to be able to run Node.js apps on Windows 10 ARM (on which V8 supposedly doesn't run?) V8 definitely has an ARM runtime, so maybe this is a result of the restrictions on what's allowed to run on the platform? (e.g. iOS and Windows Phone don't allow JIT compilers except the ones provided by the platform itself)

I'd guess, at the very least, that it doesn't support the Win/ARM ABI.

The issue is really what has been eliminated from the API. This is one of the ways they prevent you from generating your own executable code. See, e.g. this (closed) V8 bug for adding Windows Phone support: https://code.google.com/p/v8/issues/detail?id=2427

Re: Temporary fork enables Node.js to optionally use the Chakra JavaScript engine

#58

Earlier quoted context omitted.

I'd guess, at the very least, that it doesn't support the Win/ARM ABI.

The issue is really what has been eliminated from the API. This is one of the ways they prevent you from generating your own executable code. See, e.g. this (closed) V8 bug for adding Windows Phone support: https://code.google.com/p/v8/issues/detail?id=2427

Right, this is true for WP and WinRT; it's not clear that the same is true for the IoT Win10/ARM builds?

Re: Temporary fork enables Node.js to optionally use the Chakra JavaScript engine

#60
post #26

Earlier quoted context omitted.

> Isn't linking a closed source library (Chakra) problematic? Yeah, because the tech world didn't have enough problems with projects being immature, unreliable, stale 30+ year designs, abandoned, incompatible, not provided by a specific distribution, coflicting, patented and 100 other issues to consider. It just had to also add 200 legal distinctions behind what you can and you cannot do, and how you can link stuff a…

If you're asking if software licenses are important, the answer is yes, they're very important. To the GP, though, I don't immediately see how linking to Chakra in this way would be a license issue. The more important thing is the license information for Node, though, not Chromium: https://github.com/joyent/node/blob/master/LICENSE (some overlap but quite a bit that doesn't)

>If you're asking if software licenses are important, the answer is yes, they're very important.

I'm not asking about their importance, I complain about their existince (and need).

Post reply on HN