views:

541

answers:

3

I am looking to build a new website which will require a sql server backend and silverlight front end. I would also like to take advantage of the MVC framework. I currently code in C#, but am looking to learn a new type of language on this project. I've been reading up on F#, IronRuby and IronPython. IronPython seems to catch my eye the most, although I'm not completely closed to IronRuby. F# as I understand it is still more of a research language so I'm a bit wary of writing production code using it - IronPython and IronRuby have also pre-existed for several years whereas F# is completely new. My reasons for picking one of these three languages are that they are all functional and run on the DLR.

A few questions:

1) Will IronPython work well with Silverlight and MVC? If you have used IronPython in this combination I am very interested in hearing your thoughts.

2) How well does IronPython integrate into Visual Studio? I'm not completely against using some other editor... maybe Notepad++ or whatever, but since VS is really nice I would like to use it if i can.

3) How well does IronPython work with existing ASP.NET (and silverlight maybe?) server controls? I've run through some tutorials on wiring up winforms control events with IronPython - is it the same for ASP.NET controls?

+3  A: 

As a partial answer to question 1, there was this question asked on StackOverflow:

IronPython on ASP.NET MVC (StackOverflow)

Scott Hanselman had some useful links to using IronPython in a bunch of different scenarios from last year (so it may be a bit out of date):

IronPython and the DLR march on (Scott Hanselman)

In answer to question 2, you can download both integrated and isolated mode installers for Visual Studio 2008 from here:

IronPython Studio 1.0 (CodePlex)

I've been using it on and off for a while and it seems to work just fine.

And finally, in answer to question 3, you might want to take a look at this series of articles on:

Beginning IronPython (ASP.NET IronPython Resource)

Kev
A: 

I love all of these languages but I just wanted to give some deserved love to F#. F# 1.0 was released to the public on or around January 5, 2005. IronPython 1.0, the oldest of the DLR languages, was released on September 5, 2006. IronRuby 0.5 was released just mere weeks ago.

Additionally, F# will be included in Visual Studio 2010 whereas IronPython and IronRuby require extra steps to integrate them with Visual Studio.

That said, ASP.NET and MVC support for F# is pretty much non-existent whereas IronPython and IronRuby have various efforts underway already. There is Dynamic Language support for ASP.NET, Dynamic Language support for Silverlight and even the IronRuby MVC project. Whether or not any of these are suitable for a production project is up to you and your comfort level with the frameworks.

Matthew Podwysocki has an excellent post on using F# with the MVC framework.

Ray Vernagus
I actually like the idea of using F#, but my concern is the community support. There seems to be more buzz around IronPython?? maybe because of it's pre-existance as CPython.. Or maybe I'm not looking in the right corners on the web for my F# news...
Tone
F# has a very supportive community on hubFS http://cs.hubfs.net and here on StackOverflow as well. It's more likely than not that your questions will even get answers directly from the F# team.
Ray Vernagus
so what, in your opinion, would be the advantages of F# over IronPython?
Tone
For web application development? I'm not sure that there are any advantages over IronPython right now. As much as I love F# as a general purpose language, I think dynamic languages are actually better suited for web development.
Ray Vernagus
A: 

I found some great getting started videos on IronPython here:

Blip.tv IronPython Videos

Tone