[Ironpython-users] Metro Profile support
Dino Viehland
dinov at microsoft.com
Tue Nov 22 04:16:20 CET 2011
> On Mon, Nov 21, 2011 at 12:51 PM, Steve Dower <s.j.dower at gmail.com>
> wrote:
> > Given IronPython runs on Mono/*nix as-is (ie. lack of PInvokes), there
> > shouldn't be too much preventing it from being hosted in a managed
> > Metro app, depending on exactly which .NET APIs have been removed --
> > there will be WinRT substitutes for these. The entry point is
> > important to get the proper message loops running, otherwise the async
> > APIs won't work properly.
>
> The big concern is the lack of Reflection.Emit support in Metro, and whether
> enough of the DLR is included in the Metro profile to not need it. It does
> mean that ctypes won't work, but I'm not sure what else without doing a
> deeper look.
>
> If we need a C# hosting stub, that's fine, and easy enough to provide.
> If you and Dino would be so kind as to bake it into PTVS, that'd be icing on the
> cake :).
There's a bunch of things we could do in PTVS to make this awesome, I think of the 1st
two I think are what you're describing here:
Templates for metro apps
Create appx package support
Designer support
This would include updating to the Dev11 designer
Intellisense between XAML and Python extended for Metro apps like WPF works today
Metro app debugging - we'll need to do some special deploy and launch steps
App store integration
I'm sure there's more to be done too... Some of these are fairly trivial and we could
easily do ourselves, but we'd also welcome contributions :) I'm always willing to answer
questions if anyone has them about IronPython or PTVS.
>From the IronPython side in addition to making the metro compatible build someone will
also probably want to add a winrt module with a method that's similar to
wpf.LoadComponent. I think the CLR projection should take care of all the fun composition
stuff just like it does for WPF.
We also might want to switch to ifdef'ing out features like ctypes based upon something
like FEATURE_CTYPES instead of all the various platform #ifdef's we have like SILVERLIGHT.
More information about the Ironpython-users
mailing list