[IronPython] IronPython source code

Dino Viehland dinov at microsoft.com
Sat Nov 20 20:32:31 CET 2010


Wow, you must still be using IronPython 1.1 or IronPython 1.0.  The conditional expression was added in Python 2.5 so it's in IronPython 2.0 (which maps to Python 2.5).  I'm guessing the VS 2008 support you're using is IronPythonStudio which I believe is still at 1.0/1.1 as well.

We did release the code for the ASP.Net integration (see Jimmy's announcement here http://blog.jimmy.schementi.com/2010/07/aspnet-dynamic-language-support-is-open.html) but I don't remember if we included / re-built it for the 2.7B1 release.  The reason I bring this up is I think the best possible upgrade path if you want both ASP.NET + VS support would be to move to IronPython 2.7 and VS 2010.  If that's not too big of a jump for you I think you'd find it's a much better experience than 1.1 and the VS 2008 integration which is a little lacking in some aspects.

But if the conditional expression was the one extra thing you wanted you could also consider back porting it to IronPython 1.1 - it shouldn't be very difficult.  The parser side of things won't be much different between 1.1 and 2.7 but the code gen side will require some IL generation which will also give it more of a traditional compiler feel.  1.1 is also a little simpler in some aspects so it might be easier to get a feel of things there and then when you look at 2.x you can see how the DLR has been added in on top of that.

From: users-bounces at lists.ironpython.com [mailto:users-bounces at lists.ironpython.com] On Behalf Of Pablo Dalmazzo
Sent: Saturday, November 20, 2010 8:23 AM
To: IronPython Mailing list
Subject: Re: [IronPython] IronPython source code

Thanks Dino for the info, Jimmy for the tip and Jeff for the Twitter answer.

I'm interested in certain things but I need to read more to make any question understandable :) Also I would like to understand/understand better the reasons behind the important differences certain cool languages have among them, but that doesnt have to do with Python alone

BTW, we arent working with the last version of IronPython, because we are working with the one we feel more secure for compatibility/integration issues with Visual Studio 2008 and asp.net, and I havent read all the sourcecode changes report yet, but it would seem IronPython in Visual Studio 2008 Professional doesnt take as valid sentences of this kind: (in fact
they are marked as invalid by Visual Studio) "variable = value1 if condition is None else value2".

Unless it's a change in the syntax from one Python version to another version? We arent aware of all the Python changes from a version to another. When we use some IronPython modules we get errors in lines like that so we translate them to the verbose version of the sentence for them to work. We move the modules from the IronPython installation to the App_script folder

May be we are using IronPython modules from a version with another version of IronPython where that kind of syntax rule was invalid?




________________________________
From: dinov at microsoft.com
To: users at lists.ironpython.com
Date: Fri, 19 Nov 2010 17:12:44 +0000
Subject: Re: [IronPython] IronPython source code
Yeah, there's no good comprehensive docs.  There's some stuff in the CHM but it's more oriented towards people wanting to extend IronPython than work on it.

If there's something particular you're interested in someone can probably chime in on the list.  IronPython it's self is pretty abstracted away from generating code now (we generally just generate expression trees everywhere).  So if you're interested purely in the compiler side of things you can look at the Tokenizer->Parser->AST transformations but then we're basically done w/ code gen at that point.

From: users-bounces at lists.ironpython.com [mailto:users-bounces at lists.ironpython.com] On Behalf Of Jimmy Schementi
Sent: Friday, November 19, 2010 8:08 AM
To: Discussion of IronPython
Subject: Re: [IronPython] IronPython source code

You'll have an easier time understanding Sympl, a sample programming language built on the DLR, which is at http://dlr.codeplex.com. The documentation for Sympl and the DLR itself is at http://dlr.codeplex.com/wikipage?title=Docs%20and%20specs&referringTitle=Documentation. From there you can "upgrade" to IronPython, but then hopefully you'll feel comfortable with just the source code. There are some old docs at http://ironpython.codeplex.com/wikipage?title=More%20Information, but really the source is your best bet.

~Jimmy
On Fri, Nov 19, 2010 at 10:52 AM, Jeff Hardy <jdhardy at gmail.com<mailto:jdhardy at gmail.com>> wrote:
Hi Pablo,
As far as I know there isn't any detailed documentation, but Dino
would know for sure.

- Jeff

On Mon, Nov 15, 2010 at 2:59 PM, Pablo Dalmazzo
<pablodalma93 at hotmail.com<mailto:pablodalma93 at hotmail.com>> wrote:
> Hi,
> I was taken a look at the IronPython sourcecode. Is there any aditional
> resource/documentation/chart to help understand it? I've only coded in an
> "educational" compiler, you know, those made to teach you programming and
> even if it had the typical compiler stages it was very far from a real .NET
> compiler
> Greetings
>
> _______________________________________________
> Users mailing list
> Users at lists.ironpython.com<mailto:Users at lists.ironpython.com>
> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
>
>
_______________________________________________
Users mailing list
Users at lists.ironpython.com<mailto:Users at lists.ironpython.com>
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com


_______________________________________________ Users mailing list Users at lists.ironpython.com<mailto:Users at lists.ironpython.com> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ironpython-users/attachments/20101120/e08cbbb4/attachment.html>


More information about the Ironpython-users mailing list