Visual Basic comes to Windows Phone!

Ah.. It’s such a relief to be able to finally talk about it I’ve been working on getting Visual Basic supported in the Windows Phone development tools. It’s been hard to not talk about it, especially when I’d seen comments from users like “The phone dev tools are great but it’s sad that there is…

0

Solution Navigator: Get rid of your toolwindows

Adrian Collier has just blogged about the release of the Solution Navigator extension for VS 2010. One of the things I hate about Visual Studio is the number of tool windows that I have to juggle around. I have two big monitors at work and I still run out of screen real estate every so…

0

Relax! so what if the return type is missing?

Visual Basic generally goes out of its way to help out the programmer. Delegate relaxation is a good example of this need to please. Simply put, this feature is about being able to assign to delegates when the signatures don’t exactly match. The canonical example goes like this: Sub ClickHandler() Handles Button1.Click Button1.Click takes two…

0

How I landed up in the Visual Basic team.

My last post was in September 2008. It’s been close to two years since I posted anything. My rationalization for such unforgivable behaviour is that I started working on a project that wasn’t public at that time. This was an incubation effort and I was part of a very small team of fantastic people that…

1

Hosting IronPython made easier

With 2.0 Beta 5 coming out very soon, there is a new hosting helper class in there called IronPython.Hosting.Python . It has a few helper methods to create a ScriptRuntime or ScriptEngine and adds some Python-specific extension methods to ScriptRuntime and ScriptEngine. Creating a ScriptRuntime the normal way now requires a LanguageSetup as Sesh explains…

12

Passing keyword args to C# methods from IronPython

In Python one can call functions with either the argument itself or a named argument i.e f(3) or f(x=3). Python also provides syntax to absorb excess arguments for either style of argument passing with either * or **. So for example for this function f: def f(x, *args, **kwargs): pass f(3,4,5,y=6,z=7) The value passed to…

1

Static Compilation of IronPython scripts

The ability to compile IronPython scripts into .NET IL and to save them to disk existed in IronPython 1.0 but has been missing in 2.0 so far. With IronPython 2.0 Beta4 this has been added back. Why would I compile dynamic language scripts? There are a lot of reasons to compile scripts into a binary…

18

IronPython 2.0 Beta 3 is out!

The next stop on the path to IronPython 2.0 is Beta 3 and we pushed it out today. You can get the sources and binaries of IronPython here. As Jimmy mentioned in his release notes for Dynamic Silverlight last week, this release also contains the sources and binaries of IronPython and Dynamic Silverlight needed to…

1

Accessing IronPython objects from native Javascript

Today I got a question by e-mail from someone who wanted to implement something like this MSDN article in IronPython. The gist of the article is that there is a property called ObjectForScripting on a WinForms WebBrowser control. If one sets the property to an object, then that object will be available to javascript that…

2

Turning your .NET object models dynamic for IronPython

Say you want to interop with a .NET library but you also want it to behave like objects in dynamic languages do. You want to be able to add/delete methods/properties to the object dynamically. In python you can do something like this: class x(object): pass y = x() y.z = 42 dir(y) And the dir(y)…

4