Posts

Showing posts with the label tools

IronPython Tools for Visual Studio CTP3

At PyCon this year Dino Veihland announced IronPython Tools for Visual Studio, an extension to Visual Studio 2010 for working with IronPython. It features Python syntax highlighting, awesome auto-complete (intellisense) and a host of other features for working with IronPython code in Visual Studio. It can be used with the free Visual Studio shell and doesn't require you to own a full copy of Visual Studio. The third CTP (Community Technology Preview) has been made available for download. IronPython Tools for Visual Studio We are happy to announce a minor update to the IronPython Tools for Visual Studio.  IronPython Tools for Visual Studio (IPyTools) is a set of extensions available for Visual Studio 2010 which supports development of IronPython applications.  This release is our 3rd Community Technical Preview (CTP) and builds upon the previous two releases.  The release is a minor update which includes bug fixes and a number of small features.  You can download...

Unit Testing with IronPython in SharpDevelop 4

Microsoft may have finally pulled out their collective thumbs and started to support IronPython in Visual Studio , but SharpDevelop has always led the way as far back as 2007 in supporting IronPython. SharpDevelop 4 is now under development and integrates with the unittest module to support unit testing with IronPython. This feature requires Python 2.6 to be installed, and IronPython debugging is not currently working with SharpDevelop 4, but it looks like it will a great release. Matt Ward gives us the details in his latest entry on the SharpDevelop community blog: Unit Testing with IronPython SharpDevelop 4 has been updated to support unit testing with IronPython. First you will need to install Python 2.6. SharpDevelop uses the standard Python unit test library (unittest.py) to run the unit tests. ... Once the project reference is added the unit tests can be run in the normal way by right clicking in the Unit Tests window and selecting Run tests. You can run all the tests i...

A Good Mix 36: Jim Hugunin, Selenium Two, Embedding IronPython & IronPython with Expression Blend

Another collection of IronPython and DLR related articles from recent weeks. Jim Hugunin: Modelling the World Jim Hugunin is a bit of a Python veteran. As well as being the creator of two implementations of Python (Jython and IronPython), he also started the Numpy project (back when it was called Numeric). Not long ago he was swallowed by Microsoft, who also took on the development of IronPython and turning it into the Dynamic Language Runtime. In this video interview Jim explains not only how he got involved in Python, but also what he has been up to recently. IronPython Tools for Visual Studio with Expression Blend One of the ways that .NET helps you separate your visual design from your application logic is through XAML; an XML based declarative language that can be used with both Windows Presentation Foundation (WPF) and Silverlight. Naturally there are design tools that will generate XAML. Visual Studio is one of them, but the best one is Expression Blend. XAML has features...

MonoDroid: IronPython on Android?

MonoTouch is a cross-compiler IDE and toolchain for the iPhone OS series. It allows you to write iPhone / iPod Touch / iPad applications with .NET languages like C# and take advantage of nice features of the .NET framework (actually Mono) like the extensive class libraries, proper garbage collection and so on. Because of the rules against interpreters and code generators MonoTouch didn't include the System.Reflection.Emit apis that are needed for Dynamic Language Runtime languages like IronPython and IronRuby. Despite this restriction  MonoTouch was a victim of the controversial Section 3.3.1 of the iPhone developer agreement that requires iPhone apps to be written in objective-C, C or C++. (Modern developers who prefer the reliability of garbage collection based languages need not apply...) Apple's main goal seems to be sticking two fingers up to Adobe and banning their Flash cross compiler, but other tools like MonoTouch are collateral damage. If there was ever any dou...

IronPython Tools for Visual Studio

Image
Visual Studio is the Microsoft IDE for Windows and is virtually ubiquitous as a Windows development tool. Unfortunately Visual Studio has never had good support for languages like Python, which became more of a problem for Microsoft when they developed and released a distribution of Python themselves (IronPython). Whilst there have been many good IDEs  with IronPython support there has until now been lacking from Visual Studio - and adding support has been the highest voted Visual Studio feature request for some time. Adding good support for a dynamic language to an IDE is very different from supporting statically typed languages. The internals of Visual Studio rely on the static type information for the intellisense, designers, refactoring and so on. However, the IronPython team themselves have come to the rescue and built IronPython integration into Visual Studio 2010: IronPython Tools for Visual Studio We are happy to announce the first broadly available release of Iron...

Python in the Browser, IronPython in Visual Studio 2010 and Other PyCon Talks

PyCon 2010 was great fun, and included several talks on or including IronPython. Python in the Browser This is Jimmy Schementi's write-up of his talk on using Python in the Browser, with links to the video and slides: You, the Python developer, use Python because you want to, but in the browser you use JavaScript because you think you have to. With IronPython you can write browser code in Python. I’ll only begin to answer "what can the browser bring to Python?" and "what can Python bring to the browser?" in this short overview; examples will be very simple (with the exception of a few flashy ones) to make sure you can get started immediately. IronPython Tooling The video of Dino Veihland's talk on the new integration of IronPython with Visual Studio 2010. The integration, which works standalone with the Visual Studio extensibility shell or integrated into VS 2010, is alpha quality - but has lots of nice features for IronPython development. It includes...

A Good Mix 33: Embedding Python and Ruby, Profiling IronPython, News on JScript, ctypes and DeviantArt

More IronPython and DLR related projects, articles and news from around the web. Embedded IronRuby and IronPython in Silverlight with Multiple Source Files A  nice example of embedding both IronPython and IronRuby in a single C# project. As an added bonus the project is a Silverlight project so you can add both Python and Ruby scripting to applications that run in the browser. slimtune: A free profiling and performance tuning tool for .NET applications IronPython 2.6 has useful new hooks for profiling and debugging IronPython code. Unfortunately most 'standard' .NET tools don't know how to use these, and if you attempt to profile IronPython code (particularly in an embedded environment) you have to work hard to get useful information about performance of your Python code. It's nice to see a new (and open source) tool that is designed to work with IronPython: SlimTune is a free profiler and performance analysis/tuning tool for .NET based applications, including C#...

A Good Mix 24: Commerce Server 2009, SharpDevelop 3.1, NWSGI, PyCon India and more...

Another collection of blog entries and articles related to IronPython and the Dynamic Language Runtime. Commerce Server 2009 Product Query via IronPython A blog entry from Charles Medcoff with a nice example of writing product queries for Commerce Server 2009 (the Microsoft e-commerce platform) with IronPython, including the necessary app.config magic to get it to work. SharpDevelop 3.1 Released   SharpDevelop is a .NET IDE for Windows with excellent support for IronPython in its latest version. This release is the final version of 3.1, which includes the new IronPython support (including forms designer and debugger): Seven months after the 3.0 release comes version 3.1 – the last feature release of the 3.x series. The following high-profile features were added to SharpDevelop: IronPython Windows Forms Designer Debugging Support for IronPython Applications Profiler for Managed Applications The Future: 3.1.x and 4.0 SharpDevelop 3.1 is a long-term stable release branch ...

IronPython articles in English and Videos in Turkish

Ibrahim Kivanc is a Turkish blogger and programmer whose articles on Silverlight we have covered previously . He has now translated some of his articles on IronPython into English for us poor foreigners and created some screencasts in Turkish. IronPython: Dynamic Languages  As you know programming languages classified in two way; Dynamic Languages and Static Languages. In some cases Dynamic Languages has many advantages rather then Static Languages. Python/IronPython and Ruby are Dynamic Languages; C#,Visual Basic are Static Languages. Dynamic Languages that execute at runtime many common behaviors that other languages might perform during complication, if at all. These behaviors could include extension of the program, by adding new code, by extending objects and definitions, or by modifying the type system, all during program execution. These behaviors can be emulated in nearly any language of sufficient complexity, but dynamic languages provide direct tools to make use of...

A Good Mix 23: IronPython 2.0.3, Eclipse 3.5, a WPF Hyperlink, dynamic in C#, MathNet and more...

Another collection of blog entries and articles related to IronPython and the Dynamic Language Runtime. IronPython 2.0.3 Must Fix Bugs With IronPython 2.6 Release Candidate 1 out of the door you might think that IronPython 2.0 was already defunct. Not true! David DiCato, an IronPython core developer, just posted to the IronPython mailing list asking what bugs people would like to see fixed in a 2.0.3 release: As we work towards our IronPython 2.0.3 bugfix release, Dino and I would like to get a feel for which bugs left unresolved in 2.0.2 are most important for us to fix in the next release. Please let us know ASAP if there’s an issue you’d like to see fixed in IronPython 2.0.3. Thanks! IronPython unter Eclipse 3.5 mit PyDev - Veni, vidi, vici  A blog entry (in German with just a hint of Latin) from Rainer Schuster about how he bent Eclipse 3.5 (with PyDev ) to his will for IronPython development. Google translate reveals his conclusion: From now on you is CodeCompletition ...

A Good Mix 22: Win a book, Mandlebrot Performance, Double clicking in Silverlight and more...

Another collection of blog entries and articles related to IronPython and the Dynamic Language Runtime. Win a book on IronPython or F# Allan Juhl Petersen has a competition running until 29th September where you can win a book on IronPython (and a good book it is too ) or F#: I have created 7 questions, in different programming languages such as C#, F#, Ironpython, C++, Java and of course the well known and liked true or false . The questions are designed to give a number of points, where the maximum number of points given can be read in the text of the assignment. The rules are simple, the one with the highest score on points, will win. Points will be given for correctness and effort. An assignment might give 6 point, but if not entirely correct, it will be given some points for effort. The winner gets Office 2007 Student version and gets to choose between two books ? Foundations of F# or IronPython in Action - and the runner-up gets the one that the winner did not choose. Compa...

More from Mono: Moonlight 2, Monodevelop 2.2 and Debian Packages

Several of the recent entries here have been about Silverlight and IDEs. We continue the theme in this entry, but looking at things from the Mono side of the fence. Moonlight 2.0 Goes Beta Moonlight 2.0 Beta Download Silverlight is a cross-platform, cross browser plugin by Microsoft that allows you to execute Python code in the browser with IronPython. It is a Rich Internet Application framework with a user interface model based on WPF (Windows Presentation Foundation) and full access to the browser DOM. Unfortunately cross-platform only means Windows and Mac OS X, leaving Linux users out in the cold. Fortunately the Mono team have stepped up to the plate. Their implementation is called Moonlight, and Moonlight 2.0 (the version that can run Python code) has recently reached beta. It is a Firefox plugin that runs on Linux and is capable of running most of my IronPython Silverlight examples . MonoDevelop 2.2 Beta 1: We go cross-platform Python support in MonoDevelop What's New in Mon...

IronPython Tools and IDEs (and important news about PyDev)

A frequent question on the IronPython mailing list is "what IDE should I use with IronPython?". For many .NET developers the question is phrased slightly differently, "how do I use IronPython in Visual Studio?". Just as with Python this question is not easy to answer, depending to a large extent on what IDEs you have used before and personal taste. It is further complicated in IronPython with the need for features from a .NET IDE and from a Python IDE in order to fully use the language and programming environment. Popular options include IronPython Studio (either integrated with Visual Studio or standalone), Visual Studio itself, SharpDevelop , Eclipse with the PyDev extensions and the Wing IDE from Wingware. All of these tools have different levels of support for working with Python, the .NET framework, and IronPython specifically. This article looks at all of these IDEs and their features. It also covers other editors, plus common tools for Python development (...

IronPython editor postscript (Eclipse and NetBeans)

Tony Andrew Meyer did a comprehensive blog entry on choosing an IronPython editor for teaching . In it he reviewed 7 IDEs and Python editors for use with IronPython. He's posted an update to this where he tries out NetBeans plus the combination of Eclipse and PyDev. IronPython editor postscript I earlier tried various editors I was considering using to teach IronPython. One of the glaring omissions was Eclipse/PyDev, which has built-in support and is a very well-known IDE (particularly in the Java community). The main reason that I skipped Eclipse was that when I was searching for an IDE to use professionally about five years ago I tried Eclipse (for Python, C, and C++ development) and I really hated it – the IDE was very slow (especially to launch), it was very Java-centric, and just didn’t suit me at all. I’d briefly tried Eclipse before that as well, with similar results. Over the last few days, I decided that I was probably being unfair, and since this was a choice for my st...

Choosing an IronPython editor for teaching

As outlined in IronPython in Action Goes to College , Tony Andrew Meyer is teaching a programming course and using IronPython in Action as course material. Part of his preparation is deciding which IDE to use in the course - a choice that is not entirely straightforward for IronPython. Tony has done a long and thorough blog entry going through all the possibilities. The editors he looks at are: Notepad++, IronPython Studio, SharpDevelop 3.0, SharpDevelop 3.1b1, Wing IDE 101, Davy's IronPython Editor, Visual Studio under experimental hive and Komodo Edit. Choosing an IronPython editor for teaching The Northtec D520 “Programming” course is changing to IronPython (from Visual Basic) this year, so I have to figure out what editor/IDE the students should use. In some ways, Visual Studio would be ideal, since they need to get exposed to that during the course (and it’s an excellent IDE, with a really great form designer), but since there isn’t any real IronPython support in Visual Stu...

Microsoft.Scripting.Debugging

For IronPython users interested in tool support the big new feature in IronPython 2.6 is the support for Python stack frames and all that comes along with it. Not a small part of this is that pdb , the standard library Python debugger, will work with IronPython - yay! Harry Pierson (IronPython program manager for Microsoft) has a new blog entry detailing the new assembly that will come with IronPython 2.6 (but will actually be part of the Dynamic Language Runtime) to support this: Microsoft.Scripting.Debugging If you’ve compiled IronPython from source recently, you may have noticed a new DLL: Microsoft.Scripting.Debugging. This DLL contains a lightweight, non-blocking debugger for DLR based languages that is going to enable both new scenarios as well as better compatibility with CPython. Needless to say, we’re very excited about it. ... Of course, we hide all this DLR Debugger goo from you in IronPython. Python already has a mechanism for doing traceback debugging – sys.settrace . Our ...

Another IDE for IronPython? Eclipse and PyDev

A common question with IronPython is which IDE to use. Many .NET developers will immediately look for IronPython integration with Visual Studio but there are much better options. Up until now the front runner has been SharpDevelop with debugger, Windows Forms designer and even C# to IronPython translation. Other viable alternatives are Wing IDE and Netbeans . Another alternative has just arrived - and it is an unexpected one: Eclipse, through the PyDev extensions . The features it supports for IronPython are impressive. Testing on Pydev 1.4.7 & IronPython One of the major features in this release is the IronPython integration. Note that it requires IronPython 2.6 (earlier versions are not supported because of the lack of sys._getframe() ). In that integration, code-completion should be working for the .NET libraries and other dlls. For the .NET libraries, just make sure that the library you're using is listed in the forced builtins -- I believe all libraries should be there ...

Python Support in Visual Studio

Many .NET developers (all too many alas) are not willing (or not allowed) to use any language that isn't integrated into Visual Studio. As IronPython is a dynamically typed language it is much harder to build full support into Visual Studio - although there have been two attempts so far (the SDK for Visual Studio 2005 and IronPython Studio for Visual Studio 2008). In this blog entry Dave Fugate (IronPython tester and infrastructure guy for Microsoft) explains the current state of VS support for Python and as Visual Studio 2010 approaches he looks to the future... Python Support in Visual Studio I think I speak for everyone on the IronPython Team when I say we’d love to see IronPython support in Visual Studio by default without the need for any language service addition. The thing is these types of decisions are made at a much higher level than us and are heavily influenced by business needs. What I’m getting at here is if enough people provided feedback via the proper channels th...

SharpDevelop: Exploring and Debugging IronPython Code

Matt Ward is the maintainer of the IronPython support in SharpDevelop , a .NET IDE for Windows. His latest entry takes us through the IronPython debugger built into SharpDevelop. This was built using the techniques explored by Harry Pierson in writing his IronPython debugger . Crucial to debugging IronPython is "Just My Code" support (so you don't have to wade through the Dynamic Language Runtime internals when you want to step through Python code) - and this is the name of the feature in SharpDevelop. Debugging IronPython Code in SharpDevelop Ensure that the Just My Code feature is checked and that the Step over code without symbols is not checked. If the Step over code without symbols option is selected then stepping will not work properly and lines of code will be skipped over. There are two ways to debug your code. You can use the Python menu or modify the project options. We will look at both of these alternatives. First open your IronPython project into SharpDevelo...

Methodist: Make .NET Reflector come alive with IronPython

No, not a reference to a once dynamic spiritual movement that is now largely part of the institutionalised church, but a new plugin for .NET Reflector . Reflector is a tool for exploring and disassembling .NET libraries. From binary assemblies it will show you all the classes and their members including the relationships between them. It will also disassemble them back into C# or VB.NET source code; invaluable for understanding the behavior of objects but a nightmare if you feel the need to protect your source. Ben Hall , UK MVP, C# expert and dynamic languages enthusiast has created a plugin for Reflector which makes it even more useful. Part of the power of dynamic languages is how easy they make exploration from the interactive environment. Ben has brought this to Reflector by embedding an IronPython interpreter (REPL). Whilst you are looking at the available methods and their arguments and return values you can actually instantiate classes and use them from the interpreter. As wel...