467,076 Members | 1,007 Online
Bytes | Developer Community
Ask Question

Home New Posts Topics Members FAQ

Post your question to a community of 467,076 developers. It's quick & easy.

Microsoft IronPython?

I came across this link today. http://tinyurl.com/9c7ta It seems
Microsoft is getting involved with Python. What do you think of it? Is
it any good? Anything to worry about?
--
Zach

Jan 3 '06 #1
  • viewed: 1686
Share:
25 Replies
Nainto wrote:
I came across this link today. http://tinyurl.com/9c7ta It seems
Microsoft is getting involved with Python. What do you think of it? Is
it any good? Anything to worry about?
--
Zach


See http://www.ironpython.com/ -- apparently this happened over a year
ago.

-- David

Jan 3 '06 #2
The Cnet article is from today.

Jan 3 '06 #3
Nainto wrote:
The Cnet article is from today.


Maybe when David said it happened over a year ago, he was obliquely
suggesting that your questions might have been asked before (and as I
recall they were) and that a search of the archives would probably find
answers to your question.

-Peter

Jan 3 '06 #4
Ironpython has been in development from awhile, and now it's in beta
version 1.0.
Is it good to have Python running on every existing platform out there?
Of course it is.

Is it good to have Python running on Java and .NET?
Sure, why not? One of the good things about Python is that it runs
everywhere, thus making your code more portable and usable.
Many people program for a living and often they are forced to work with
certain technologies that are beyond their preference.
If your company uses Microsoft software, wouldn't you like being able
to run Python on it?
Personally, I'd like to see Python going everywhere. I want it to be
ubiquitous.
This way there will be no excusses for rejecting it (by your bos, your
company, your colleagues..).

Will Microsoft hurt Python?
How? If sometime in the future, MS decides to modify the language by
creating something different, you'll have the choice to decide whether
you like it or not.
Nobody will steal Python, it is free and it will always be.
What's more, if you decide that you want to use Python on .Net and you
don't ike the official Microsoft release, you can fork it (the code is
freely available) and you can call it "MyGroovyNewLanguage" if you
want.

Right now there are other languages based and inspired in Python (Boo
for example) that run on .Net and Mono, and they are useful and have an
enthusiast comunity behind them. It's good to have many choices and
it's good to be free to choose.
Although it's also very good to have a main implementation, lead by its
creator, who will always take care that there will be a pure and
legitimate Python for those who like it just the way it is.

Luis

Jan 3 '06 #5
Ray
Hi Luis,

IronPython as it is now is already slightly different from CPython
isn't it? Because it has to capture features of CLR languages that are
not in Python (such as using generic containers).

I wonder how this will branch further in the future--will CPython
expand to follow IP, or will they keep diverging further and further.

Still I'm very excited about IP--it's the best thing to happen in a
long while, especially with Jython moving so slow these days...

Ray

Luis M. González wrote:
Ironpython has been in development from awhile, and now it's in beta
version 1.0.
Is it good to have Python running on every existing platform out there?
Of course it is.
Luis


<snip>

Jan 4 '06 #6
> IronPython as it is now is already slightly different from CPython
isn't it? Because it has to capture features of CLR languages that are
not in Python (such as using generic containers).


Hmm... I'm not sure what you mean by "capture features of CLR".
I think Ironpython is a faithful implementation of python but, of
course, it's aimed at allowing programmers to take advantage of the
framework, it's classes and components.
If not, there would be no reason to port Python to .Net.
Don't you think?

Jan 4 '06 #7
Ray

Luis M. González wrote:
IronPython as it is now is already slightly different from CPython
isn't it? Because it has to capture features of CLR languages that are
not in Python (such as using generic containers).


Hmm... I'm not sure what you mean by "capture features of CLR".
I think Ironpython is a faithful implementation of python but, of
course, it's aimed at allowing programmers to take advantage of the
framework, it's classes and components.
If not, there would be no reason to port Python to .Net.
Don't you think?


Oh, yeah, that's undoubtedly true. What I was referring to were things
such as using [] for generic, that doesn't exist in current CPython
does it?

Regardless, I think it doesn't matter much because once you use .NET
libraries you are kinda tied to IronPython anyway--but if Python as a
language can be picked up by a broader audience due to IP I'm very
happy :)

Jan 4 '06 #8
Luis M. González wrote:
Is it good to have Python running on Java and .NET?
Sure, why not?


At least for Jython we already know from the Jython homepage that it is
the great hope of the Java platform to survive in future and far
beyond. With a comparable fate dotNET and Microsoft survive till the
end of time only because IP needs them. Is that what the Python
community really wants?

Kay

Jan 4 '06 #9
Ray
Kay Schluehr wrote:
At least for Jython we already know from the Jython homepage that it is
the great hope of the Java platform to survive in future and far
beyond.


Yeah except that it's coming on so slow... we were doing some scripting
for our Java app and Groovy won because Jython has been in alpha for
YEARS :(

Jan 4 '06 #10
Ray wrote:
Kay Schluehr wrote:
At least for Jython we already know from the Jython homepage that it is
the great hope of the Java platform to survive in future and far
beyond.

Yeah except that it's coming on so slow... we were doing some scripting
for our Java app and Groovy won because Jython has been in alpha for
YEARS :(


That's a hoot! Of course you can choose what language you like, but to
choose Groovy over Jython because it is more developed is mind-boggling!

Jython 2.1 has been released, stable and suitable for production use for
many years. The Groovy community was still working on the *language
definition* in November 2005 and has yet to deliver a stable final release.

Kent
Jan 4 '06 #11
On Wed, 4 Jan 2006, Kent Johnson wrote:
Ray wrote:
Kay Schluehr wrote:
At least for Jython we already know from the Jython homepage that it is
the great hope of the Java platform to survive in future and far
beyond.


Yeah except that it's coming on so slow... we were doing some scripting
for our Java app and Groovy won because Jython has been in alpha for
YEARS :(


That's a hoot! Of course you can choose what language you like, but to choose
Groovy over Jython because it is more developed is mind-boggling!

Jython 2.1 has been released, stable and suitable for production use for many
years. The Groovy community was still working on the *language definition* in
November 2005 and has yet to deliver a stable final release.


I agree 100% with the above. I've been using Jython in production for two
years now, and it's been rock-solid. A little bit outdated, yes, but you
could do a lot worse than Python 2.1, as far as feature set is concerned.
(Of course, this is not to discourage the Jython team from coming through
with a new stable release. ;)

--
.:[ dave benjamin: ramen/[spoomusic.com] ]:.
Jan 4 '06 #12
Ray
Kent Johnson wrote:
That's a hoot! Of course you can choose what language you like, but to
choose Groovy over Jython because it is more developed is mind-boggling!

Jython 2.1 has been released, stable and suitable for production use for
many years. The Groovy community was still working on the *language
definition* in November 2005 and has yet to deliver a stable final release.


Yeah, I know, I know... but I'm not the only voice in the team, mind.
If it were up to me it'd be Jython for sure...

Ray

Jan 4 '06 #13
> Oh, yeah, that's undoubtedly true. What I was referring to were things
such as using [] for generic, that doesn't exist in current CPython
does it?


I'm not en expert on the subject, but I guess that any language
implementation running on .Net should be able to at least "understand"
generics or any other feature available on this framework, because
languages are supposed to interact and use all kinds of classes and
assemblies regardless of the language they were written in.
As for using generics, I think this is not very important in python, I
guess, because it is dyamic and you don't declare types.
So writing x =List[str](), for example, doesn't buy you anything.
You're better off using a regular list: x = [].

Someone more knowledgeable please kindly correct me...

Luis

Jan 4 '06 #14
Ray
Luis M. González wrote:
I'm not en expert on the subject, but I guess that any language
implementation running on .Net should be able to at least "understand"
generics or any other feature available on this framework, because
languages are supposed to interact and use all kinds of classes and
assemblies regardless of the language they were written in.
As for using generics, I think this is not very important in python, I
guess, because it is dyamic and you don't declare types.
So writing x =List[str](), for example, doesn't buy you anything.
You're better off using a regular list: x = [].
Yes, in this List example I agree with you. I think it is better to use
the regular one.

But, say, since C# has generic now, somebody may write a generic class,
so you have to have a way to use it (unless it's like Java when you can
still do raw types--correct me if I'm wrong).

But then again, once you start using .NET class you're tied to .NET
anyway so this is not a big problem, I think--although the more
perfectionist among us might like to isolate parts of Python code that
are .NET/IP specific to make porting easier if it ever comes to that...

Someone more knowledgeable please kindly correct me...

Luis


Jan 5 '06 #15
Ray wrote:
But then again, once you start using .NET class you're tied to .NET
anyway so this is not a big problem, I think--although the more
perfectionist among us might like to isolate parts of Python code that
are .NET/IP specific to make porting easier if it ever comes to that...


That's exactly what they did with version 1.0.
For example, if you wanted to turn a string into uppercase, in previous
versions you could have done:

'hello'.upper() or 'hello'.ToUpper()

That means, the python way and the .NET way.
But now if you want to do it the .NET way, you have to add the
statement "import clr" before.
So I guess you can isolate your coding to standard python if you want
or go forward and use all the CLR capabilities.

Jan 5 '06 #16
EP
Luis M. González wrote:
Will Microsoft hurt Python?

I think it is naive to ignore the fact that Microsoft could hurt Python,
though there may be nothing anyone can do.
How?
- create a more prevalent version of "Python" that is less Pythonic or
undermines some of the principles of the language, basically usurping
Python as we conceive it in the process;
- create an incompatible version, so that Python "portability" is
dependent upon the programmer porting his code to two separate versions
("JavaScript" comes to mind);
- create a poor implementation of Python so that programmers try the MS
version first, find it lacking, and decide Python is a poor language...
tarnishing the reputation of the language and its adoption...

I'm sure there are more ways MS (or any powerful entity developing
another version of Python) could hurt Python. You have to look beyond
the freedom of the individual to choose to the context that individual
operates within.

Defenses? Maybe enforcing a trademark of "Python" as a programming
language name - if it is registered and enforceable - clearly
"IronPython plays on the Python" name (Pepsi wouldn't be allowed to sell
IronCoke, would they? without Coca Cola's permission...)
If sometime in the future, MS decides to modify the language by
creating something different, you'll have the choice to decide whether
you like it or not.
Nobody will steal Python, it is free and it will always be.
What's more, if you decide that you want to use Python on .Net and you
don't ike the official Microsoft release, you can fork it (the code is
freely available) and you can call it "MyGroovyNewLanguage" if you
want.

Right now there are other languages based and inspired in Python (Boo
for example) that run on .Net and Mono, and they are useful and have an
enthusiast comunity behind them. It's good to have many choices and
it's good to be free to choose.
I'm not too worried, but the rich and powerful can always do more with
freedom than the average person; sometimes at the expense of the average
person.
Although it's also very good to have a main implementation, lead by its
creator, who will always take care that there will be a pure and
legitimate Python for those who like it just the way it is.

Luis


Alot of very smart and/or good folks have worked to make Python the neat
language it is, and hopefully a "main", excellent version of Python will
always have this.

And if the whole world goes .Net, well, Python won't be left out
entirely, it appears.

I'd agree that meanwhile there's little reason to panic - whatever the
future brings, it seems panicking does little good, except for arms
merchants and sellers of duct tape and flashlight batteries.
Anyway, the next Microsoft is Google.

And they have Guido already.
[tongue in cheek!]
[ADVERTISEMENT]
Python Emergency Supplies Sold Here
- List Comprehensions - $12.99 per bracket
- Import this - a collectors item - on Sale today! - $95.99
- Namespaces (quantities limited) - call for quote!
[/]
Jan 6 '06 #17
EP wrote:
- create a more prevalent version of "Python" that is less Pythonic or
undermines some of the principles of the language, basically usurping
Python as we conceive it in the process...


I understand all the concerns, the evil empire and all that..
But I think nothing of this will happend.
Nobody said anything when Jim Hugunin created Jython (python for java).
What about Sun? Isn't it a big corporation? Is Java Open source?
The result of Jython is that it made python a little bit more popular,
because it's cool to leverage your skills while still "doing Java".
The same will happen with Ironpython. Many people needs to work with
..NET, because their companies use this technology or because their
customers want it, and because the market needs .NET developers.So if
you are in this situation, wouldn't you like to use Python, while still
doing .NET?

Besides, MS goal is not controlling python (or killing it). What they
want is making the CLR (.NET) an attactive and succesful framework, and
they plan to do this by supporting as many languages as possible. They
are also planning to help other developes port their languages to .Net
and they want it to be a good runtime for runing dynamic languages.

MS product is not Ironpython (or C# or VB). It's product is the CLR,
the .NET framework.
They don't care who creates or develops a language, as long as it runs
on the CLR.
And if the CLR turns out to be good and succesful, I want Python to run
on it.

What's more, I got the feeling that MS understood that they have to win
the programmers hearts in order to attract them, and they won't do this
by "stealing" what they love most.
The key of their success is in attracting programmers to their field,
not to C# or to VB.Net, but to the CLR.
Don't you think?

Luis

Jan 6 '06 #18

EP wrote:
Luis M. González wrote:
Will Microsoft hurt Python?

I think it is naive to ignore the fact that Microsoft could hurt Python,
though there may be nothing anyone can do.
How?

- create a more prevalent version of "Python" that is less Pythonic or
undermines some of the principles of the language, basically usurping
Python as we conceive it in the process;
- create an incompatible version, so that Python "portability" is
dependent upon the programmer porting his code to two separate versions
("JavaScript" comes to mind);
- create a poor implementation of Python so that programmers try the MS
version first, find it lacking, and decide Python is a poor language...
tarnishing the reputation of the language and its adoption...

....
Wasn't it often said that Microsoft's strategy for dealing with
standards (and perhaps rival open source software) was
"embrace, extend, extinguish"?

Jan 6 '06 #19

"EP" <EP@zomething.com> wrote:
Luis M. González wrote:
Will Microsoft hurt Python?

I think it is naive to ignore the fact that Microsoft could hurt Python,
though there may be nothing anyone can do.
How?

- create a more prevalent version of "Python" that is less Pythonic or
undermines some of the principles of the language, basically usurping
Python as we conceive it in the process;
- create an incompatible version, so that Python "portability" is
dependent upon the programmer porting his code to two separate versions
("JavaScript" comes to mind);
- create a poor implementation of Python so that programmers try the MS
version first, find it lacking, and decide Python is a poor language...
tarnishing the reputation of the language and its adoption...

....
Wasn't it often said that Microsoft's strategy for dealing with
standards
(and perhaps rival open source software?) was "embrace, extend,
extinguish"?

Jan 6 '06 #20
EP wrote:
Luis M. González wrote:
Will Microsoft hurt Python?

I think it is naive to ignore the fact that Microsoft could hurt Python,
though there may be nothing anyone can do.
How?


- create a more prevalent version of "Python" that is less Pythonic or
undermines some of the principles of the language, basically usurping

First of they would need to make Python a strategic platform for
corporations, so that it was used practically everywhere on Windows.

Then it would have the powerbase to change the lanuage and make an
incompatible version that they could control.

As far as I can see C## has that role for them. So I don't see how
Python should be in any danger.
--

hilsen/regards Max M, Denmark

http://www.mxm.dk/
IT's Mad Science
Jan 6 '06 #21
I think that this posted message in Jim Hugunin's weblog clearly shows
what are Microsoft intentions regarding Python and other dynamic
languages:
http://blogs.msdn.com/hugunin/archiv...05/509812.aspx

We're hiring full-time and summer interns!

We're looking for a few exceptionally talented individuals with
dynamic language experience (Python, Ruby, PHP, JavaScript, etc.) to
come join our efforts to make the Common Language Runtime (CLR) the
world's best platform for dynamic languages and dynamic scenarios.
The CLR already has a lot of dynamic support with reflection, runtime
code generation, and cross-language interaction. IronPython has shown
that the CLR can be a great platform for building dynamic languages. We
want you to help us take this support to the next level.

We have one developer (not yet posted), one program manager, one tester
and at least one summer intern positions available. If you're
interested, please send me email (ji****@microsoft.com) that clearly
explains why you'd be the best choice for one of these jobs and
attach a current resume.
posted on Thursday, January 05, 2006 1:11 PM by hugunin

Jan 6 '06 #22
Ray

Max M wrote:
First of they would need to make Python a strategic platform for
corporations, so that it was used practically everywhere on Windows.


Actually, if Python gets used everywhere on Windows, I'll be happy,
pure Python or no pure Python :) Visual Python 2010 anyone?

Jan 7 '06 #23
Max M wrote:
First of they would need to make Python a strategic platform for
corporations, so that it was used practically everywhere on Windows.

Then it would have the powerbase to change the lanuage and make an
incompatible version that they could control.

As far as I can see C## has that role for them. So I don't see how
Python should be in any danger.


If Python would create a Py3EE spec and make it an industry standard,
provide a reference implementation and attract bluechips like
Accenture, Bearing Point, Cap Gemini and IBM, Microsoft would be on the
stage in order to "improve" it. Currently Python is still a cute little
language, with plenty of bindings but few interesting products, that
keeps attention among nerds and some consultants, but nothing more.
Java, C++, C# and VB are playing in an own league.

Jan 7 '06 #24
sam
After downloading and trying out Ironpython, I have the following
comments:
1) I like the idea of Python under .net
2) I like the support for both Microsoft math lib,and Python's math lib
Will Microsoft maintain the compatability between standard python with
the addition of their libs?

Jan 7 '06 #25
Nainto wrote:
I came across this link today. http://tinyurl.com/9c7ta It seems
Microsoft is getting involved with Python. What do you think of it? Is
it any good? Anything to worry about?


Of course if you'd been at PyCon last year you'd have heard Jim
Hugunin's opening keynote "Python at Microsoft", and you'd have seen his
demonstration and know just how far Jim had already got IronPython.

Even then it was running selected benchmarks faster than CPython, though
it certainly wasn't faster across the board. A nice feature is it easily
interfaces with the whole slew of .NET components. I'm personally
wondering (without any data) whether ActiveState's recrelated to a
forthcoming Microsoft integration of Python into Visual Studio.

The major thing to take away from this is that we should *all* go to
PyCon if we can! This is a timely reminder, as the extended early bird
deadline expires on January 15. Don't forget to book your hotel
accommodation at the venue before February 1: at that point the special
conference rate ceases to be available.

Tutorials are also available at bargain prices the day before the
conference, so hurry along to

http://us.pycon.org/TX2006/Registration

and make your reservation immediately!

hurry-hurry-hurry-ly y'rs - steve
--
Steve Holden +44 150 684 7255 +1 800 494 3119
Holden Web LLC www.holdenweb.com
PyCon TX 2006 www.python.org/pycon/

Jan 12 '06 #26

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

82 posts views Thread by Neuruss | last post: by
3 posts views Thread by Carl Johan Rehn | last post: by
3 posts views Thread by Sanghyeon Seo | last post: by
2 posts views Thread by tkpmep@hotmail.com | last post: by
9 posts views Thread by Claudio Grondi | last post: by
2 posts views Thread by edfialk | last post: by
28 posts views Thread by sturlamolden | last post: by
2 posts views Thread by Troels Thomsen | last post: by
22 posts views Thread by dmitrey | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.