SoC: JavaScript implementation

Reece Dunn msclrhd at googlemail.com
Mon Mar 30 15:21:32 CDT 2009


2009/3/30 Piotr Caban <piotr.caban at gmail.com>:
> Hi,
>
> I'm planning to participate in Google Summer of Code this year. I was
> thinking about working on recently added jscript.dll implementation. Its
> engine looks almost complete, but I can see that there are many
> unimplemented APIs. That's what I'd like to improve.

Yay! :D

> - Look at Wine jscript.dll related bugs.
> These would be: 15432, 15582, 16208, 16594 and 17152. I'm not sure if
> they are JScript or MSHTML bugs yet as they require deeper analyze. I
> will fix their JScript part of problem.

You might also want to look at 13459 ("Oberon game launcher (incl.
buttons) does not work"). This is related to 16594 ("Oberon game
launcher does not show the buttons to launch the game.").

In the original 13459, wine would render the buttons (but would render
them funny), but they were unusable - that is clicking on them did
nothing. Since the commit located in 16594, only the background is
displayed (hence them being different defects).

It would be nice to have this working, as this is the only thing
holding up Oberon games from working (well, around 50% of them, anyway
:) ).

> - Fix W3School (http://www.w3schools.com/js/default.asp) JavaScript
> examples.
> These seem to be a nice tests for me. They test commonly used APIs in
> real life scenarios. I believe that if these tests work, most web sides
> should work as well.

This is a good idea. I also wonder how we can test the mshtml
DOM/scripting? I suspect that this is where most applications will
trip up. (Unless they are hitting a jscript bug first!)

> - Test complex web pages
> Pages like GMail or Google Office would be really cool to have working
> with our JavaScript. Unfortunately I'm afraid that it may be too much
> work for SoC to fix them. I'd like to do some testing and find some
> complex web pages that I could use as tests.

These are also likely to have issues when manipulating/navigating html
pages using the mshtml DOM API - i.e. the HTML DOM referenced in
http://www.w3schools.com/htmldom/dom_reference.asp.

> If someone has any more ideas about tests I'm open for suggestions.

You might want to try adding some JSON ("Java Script Object Notation")
examples - http://www.json.org/. The website even includes some JSON
parsers released under the Public Domain! They would make interesting
stress tests.

Also, if you are feeling adventurous, there are some ray tracing
examples written in JavaScript!
    http://www.chromeexperiments.com/detail/javascript-canvas-raytracer/
(the link says that it is out of bandwidth!)
NOTE: There are several (now closed) Firefox bugs that contain various
forms of this, which can be found on bugzilla - the Firefox bugzilla
site is being slow for me, so I cannot look up the specific bugs at
the moment.

And more generally http://www.chromeexperiments.com/browse/.

You might also want to look at some of the javascript benchmark suites
like SunSpider and the V8 testsuite.

> For testing JavaScript on web pages I'm planning to use IE working on
> Wine with built-in jscript.dll. This way I will be able to test
> jscript.dll on web pages that is currently impossible to do with Wine
> MSHTML and iexplore.exe.
>
> What do you think about this idea?

Sounds good.

- Reece



More information about the wine-devel mailing list