4 ms·
JSC has a very stable external API and performs competitively (for some reason it always beats V8 on DOM manipulation stuff -- I don't know why v8/chrome haven'
by randallu 13y ago
JSC has a very stable external API and performs competitively (for some reason it always beats V8 on DOM manipulation stuff -- I don't know why v8/chrome haven't been able to make more efficient bindings).
It doesn't build outside of the WebKit tree, though... (but there are some scripts which should in theory build only jsc; I think they want all the deps to WebKit, etc, however).
- olliej 13y agoJSC should build cleanly on its own (e.g. no dependencies on anything on top of it.) It's possible some of the build scripts have developed a bizarro dependency on other portions of the repo, but we'd happily take patches to fix those issues. As far as APIs, JSC has provided a completely API and ABI stable C API for 7-ish years, and there's an ObjC API built on top of that now. Unfortunately the nature of C APIs for interacting with language runtimes makes it somewhat clunky and hard to use perfectly - C++ makes this easier as you can make types with constructors and destructors to make a lot of the otherwise manual work (ref()/deref(), etc) entirely automatic. Unfortunately C++ makes it easy to make an API that has a stable interface, but still isn't ABI stable.
- azakai 13y agoPeople build jsc on its own on mac, but I have never been successful on linux. Hopefully there is some way though? I've been forced to build all of WebKit-gtk. A bigger concern for me personally is that the jsc shell lacks typed arrays, https://bugs.webkit.org/show_bug.cgi?id=119828 https://bugs.webkit.org/show_bug.cgi?id=119828 edit: i should have said 'full spec for typed arrays', see the linked issue
- olliej 13y agoThe typed arrays should be available in trunk, haves you checked recent trunk? I believe the "need all of webkit-gtk" was a pile of sadness in build-jsc + automake that may have been fixed recently. I'm sure Zan, Xan, or Michel would be happy to help if it's still borked. There are _some_ platform requirements that make a generic "linux" not work, as we build on the platform support libraries for threads, unicode, etc so JSC may have random looking dependencies on such
- azakai 13y agoSorry if i wasn't clear, I tried trunk when I filed that issue, last week - typed arrays are there, but they are missing things like set() and subarray() (mentioned in the issue). I am not even sure how to try to build jsc by itself on linux, i couldn't find any instructions (online or in the dir)? All online discussions i found said i need to build all of webkit.
- olliej 13y agoHave you tried ToT trunk? We moved the entire TA impl into JSC itself last week and just accepted the semantic changes necessary for non-WebIDL types. Tools/Scripts/build-jsc _should_ build just jsc.
- Meai 13y agoWell I spent around 5 minutes downloading and trying to build, immediately hitting this wall on Windows: http://i.imgur.com/J9Gs6wb.png http://i.imgur.com/J9Gs6wb.png Seems that nobody has tried that in a long time, or who knows why it references something in C:\tools