QtScriptCS?

25 views
Skip to first unread message

Jeremy Bell

unread,
Sep 3, 2014, 1:35:40 AM9/3/14
to scri...@googlegroups.com
Hello!

I'm new to this group. I've been looking around for any existing projects related to .net and scripting and of course ScriptCS came up at the top of the very short list!

A couple of projects I'm interested in, JanusVR and High Fidelity's unnamed VR project ('hifi' for now, /highfidelity/hifi on github) are currently using QtScript's JavaScript interpreter for their scripting functionality. After looking into QtScript a little, I found that 1) a lot of new projects appear to be going with QtScript/JavaScript for their hosted scripting requirements, and 2) there were actually other scripting languages that supported Qt. For example there is (or was - not sure how well maintained it is), a python scripting layer that could be used. My understanding is that Qt provides a kind of native-code reflection capability that is used by QtScript for JavaScript interop, but can be used by other hosted script engines as well.

So I thought just maybe a .Net scripting plugin for Qt was within the realm of possibility. I spoke with the maintainers of both JanusVR and hifi, and neither seemed to be completely opposed (hypothetically) to alternative scripting languages (including C#), as long as it worked with their existing Qt system. So, I thought I'd post here and see what people thought of the idea: how about an official Qt-ScriptCS integration? Qt/QtScript seems to be a popular app scripting environment, and this seems like a perfect use case for ScriptCS. 

One sanity check question: Is there functionality in the hosted ScriptCS API, or any planned functionality, to whitelist the system API surface available to scripts - for example, to completely hide the File/Process APIs or whitelist DLL/nuget/script-pack references? This would be needed for most hosted script engine requirements like hifi where the scripts being run are relatively untrusted and the scope of the scripts are limited to in-world scripting.

Thanks,
Jeremy
Reply all
Reply to author
Forward
0 new messages