Hi everyone,
I have this idea of implementing vbscript.dll for Google SoC. Any comment would be appreciated before I start working on my proposal.
The reason for implementing vbscript.dll is because right now there's nothing in the trunk about it. jscript.dll has a stub, but vbscript.dll doesn't, and it's an area that I think I can work on. VBScript is used by the Windows Installer, can be potentially be used for DirectMusic script (from http://wiki.winehq.org/DirectX-ToDo), and some applications use it.
Just the core language/runtime (vbscript.dll) is implemented, no extra COM/OLE objects such as FSO (file system object), etc. (unless I have time). The language by itself is designed to be simple and easy, so an interpreter shouldn't be hard. I wrote a C-style script interpreter in Java this past year. For a few years I used to hack VB, and I know the language and VBScript is just a cousin of VB. The runtime library is not big, and writing it shouldn't take too much time either.
I think the hardest part would be to implement the COM interfaces that deal with scripting. And that's the area I know least about.
Thanks! Jim
Hi Jim,
I have this idea of implementing vbscript.dll for Google SoC. Any comment would be appreciated before I start working on my proposal.
That sounds ambitious, but you're welcome to try!
For a few years I used to hack VB, and I know the language and VBScript is just a cousin of VB. The runtime library is not big, and writing it shouldn't take too much time either.
If you say so ;-)
I think the hardest part would be to implement the COM interfaces that deal with scripting. And that's the area I know least about.
The recently added jscript stubs are probably a decent place to start. Getting yourself familiar with COM is probably important to the success of your project. I'd recommend a copy of Don Box's Essential Com as the best way to "get" COM in a hurry. There are plenty of online references too, of course.
One general point is that people often don't plan for the amount of time needed to get patches accepted--it's often more than people realize. You might start by trying to get a stub DLL for vbscript accepted, just to get the hang of the development process. Check out the git tree, build it, make some changes, commit to it, and send the patches in. You'll find instructions on how to do all that on the wiki.
Looking forward to seeing your application. Good luck, --Juan
Hi Jim,
2008/3/27, Jim Chen jim@darchons.net:
Hi everyone,
I have this idea of implementing vbscript.dll for Google SoC. Any comment would be appreciated before I start working on my proposal.
The reason for implementing vbscript.dll is because right now there's nothing in the trunk about it. jscript.dll has a stub, but vbscript.dll doesn't, and it's an area that I think I can work on. VBScript is used by the Windows Installer, can be potentially be used for DirectMusic script (from http://wiki.winehq.org/DirectX-ToDo), and some applications use it.
Just the core language/runtime (vbscript.dll) is implemented, no extra COM/OLE objects such as FSO (file system object), etc. (unless I have time). The language by itself is designed to be simple and easy, so an interpreter shouldn't be hard. I wrote a C-style script interpreter in Java this past year. For a few years I used to hack VB, and I know the language and VBScript is just a cousin of VB. The runtime library is not big, and writing it shouldn't take too much time either.
I think the hardest part would be to implement the COM interfaces that deal with scripting. And that's the area I know least about.
I don't know if you could do all of it in 3 months, what if it takes longer, would you still be interested in continuing work on it? COM isn't that hard, if you run into troubles with it a lot of wine developers know about it, and there are a lot of good com examples in the wine code.
Cheers, Maarten.
On Fri, Mar 28, 2008 at 3:08 PM, Maarten Lankhorst m.b.lankhorst@gmail.com wrote:
Hi Jim,
2008/3/27, Jim Chen jim@darchons.net:
Hi everyone,
I have this idea of implementing vbscript.dll for Google SoC. Any comment would be appreciated before I start working on my proposal.
The reason for implementing vbscript.dll is because right now there's nothing in the trunk about it. jscript.dll has a stub, but vbscript.dll doesn't, and it's an area that I think I can work on. VBScript is used by the Windows Installer, can be potentially be used for DirectMusic script (from http://wiki.winehq.org/DirectX-ToDo), and some applications use it.
Just the core language/runtime (vbscript.dll) is implemented, no extra COM/OLE objects such as FSO (file system object), etc. (unless I have time). The language by itself is designed to be simple and easy, so an interpreter shouldn't be hard. I wrote a C-style script interpreter in Java this past year. For a few years I used to hack VB, and I know the language and VBScript is just a cousin of VB. The runtime library is not big, and writing it shouldn't take too much time either.
I think the hardest part would be to implement the COM interfaces that deal with scripting. And that's the area I know least about.
I don't know if you could do all of it in 3 months, what if it takes longer, would you still be interested in continuing work on it? COM isn't that hard, if you run into troubles with it a lot of wine developers know about it, and there are a lot of good com examples in the wine code.
Cheers, Maarten.
Of course, if I end up doing it I will finish it till it's done. Isn't that one of GSoC's purposes, to stay involved even after the program ends? But obviously I still need to accomplish things during the program so that's why I'm still doing research on it, to see how much time I might need to get at least something done. I'm OK with the basic COM stuff. IUnknown doesn't scar e me :) But for more advanced stuff, I'm sure I'll need to ask around.
Thanks! Jim
Jim Chen wrote:
Hi everyone,
I have this idea of implementing vbscript.dll for Google SoC. Any comment would be appreciated before I start working on my proposal.
It would be great to have vbscript.dll implemented in Wine and I hope that some day we will have it, but I think you underestimate amount of work on it. It's a much bigger task than the usual SoC projects, IMO. Please do some research before deciding to work on it. I've found Eric Lippert's blog very useful for information about active scripts http://blogs.msdn.com/ericlippert/default.aspx esp. the archive from 2004. If you'll decide to apply for this project, please describe it well enough so we know that you can accomplish it.
Jacek
On Fri, Mar 28, 2008 at 4:11 PM, Jacek Caban jacek@codeweavers.com wrote:
Jim Chen wrote:
Hi everyone,
I have this idea of implementing vbscript.dll for Google SoC. Any comment would be appreciated before I start working on my proposal.
It would be great to have vbscript.dll implemented in Wine and I hope that some day we will have it, but I think you underestimate amount of work on it. It's a much bigger task than the usual SoC projects, IMO. Please do some research before deciding to work on it. I've found Eric Lippert's blog very useful for information about active scripts http://blogs.msdn.com/ericlippert/default.aspx esp. the archive from 2004. If you'll decide to apply for this project, please describe it well enough so we know that you can accomplish it.
Jacek
Wow thanks for the link! Surprisingly useful (for something from MS :D) I've been doing research and I understand it will be a huge effort. I've already applied to the windowless Rich Edit project, which will most likely be easier than this, but I think this one will be more exciting because it's more challenging :) I'm more than willing to continue after SoC if I end up working on it. I don't have to implement the newest version either, with support for classes, etc. If I just implement VBScript say up to 2.0 that's within reach, I think.
Thanks again! Jim