On Monday 02 of May 2011 18:29:13 Charles Forsyth wrote:
it's hard to see how a fast Javascript implementation,
> (...) it's hard to see how a fast Javascript implementation, 
> for example, is especially dependent on the operating system
> on which it runs (...)

<![PESSIMISTIC VIEW[

that used to be the case, but much not anymore. some popular websites are JS-
heavy, and the browser has to do heavy lifting. various speedups were 
implemented by popular browsers -- and are practically necessary for use of 
those sites. one popular speedup is compilation of JS to native code. this 
depends to a good deal on paging for protection (and perhaps GC, not sure). 
this requires some co-operation with the OS. 


another point of dependence (read: infinite surface of dependence) is the 
interaction of JS and DOM with OS-specific input model. today not only 
hyperlinks and comboboxes are widgets, but a lot of seemingly plain areas are 
made active, both on click and on mere hover, (for good reasons and with good 
use).


also the output model: (re-)drawing screen content. both good old 2D APIs and 
(for IE, at least, but will in near future for others) interacting with GPU 
for access to accelerated drawing primitives, working neatly with composition 
and avoiding costly cascades of copying image data around system memory and to 
video memory.


yet another point, probably best illustrated with FF: some plugins contribute 
functionality via JS code. supporting such plugins also should have some 
platform-specific dependencies.


something having little to do with JS itself, but important for website 
rendering: font support. the second worst problem in computing, IMHO. some 
websites require pixel- or even sub(!)-pixel accuracy, lest they end up 
looking all messy and/or end up with overlapping widgets. yes, it runs kinda 
contrary to the purpose of HTML and CSS. another fine technical decision by 
technically unqualified managerial personnel, sigh.


last but not least, google's NaCl (a.k.a. Native Client) which uses certain 
properties & aspects of memory protection for secure execution of binary code 
from foreign sources (yeah, i know we've been there; but this one oughta work, 
as it depends on silicon, not digital signatures from one gatekeeper company). 
it again depends on the OS to a degree for running the code. i believe this is 
an interesting thing, and possibly a viable alternative to including explicit 
support for countless alternative scripting languages directly into browsers.


to wrap it up: i don't believe in high-performance cross-platform browsers. 
they either need helluva lots of maintenance & chasing the evolving platforms, 
or not perform all that well.

]]>

-- 
dexen deVries

``One can't proceed from the informal to the formal by formal means.''

Reply via email to