[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