While most Windows developers are used to the .NET Framework being a standard part of the system, Microsoft doesn’t offer an official release which targets Linux or OS X. The Mono Project was set up to bridge this gap, and provide an open source, cross platform .NET implementation. It supports most of the same capabilities that the standard .NET Framework supports, and even allows for easy interop with native frameworks such as Cocoa under OS X (using Cocoa#).
We have heard from a number of people querying if you can use LightSpeed when developing for Mono. Up until now, we have been somewhat naive to this, however the Mono site promotes "Binary Compatible", the FAQ tells me that you can run binaries produced by the Microsoft compilers and the Mono Migration Analysis tool only popped up a couple of warnings, so I thought we should certainly look deeper at this!
So lets start with a basic model, a film festival.
So a simple test over this model using LightSpeed would be to fetch out some entities, and perform an insert and update, so some example code might be:
Of course this runs happily under Windows, but how about under OS X using Mono? Lets start with the simple case, taking compiled output from Visual Studio on Windows and trying to run it under Mono on OS X.
No problem â€“ but how about if we natively compile the same code using the Mono compiler?
Looks great, but how does it run?
Very exciting :)
We have started targetting Mono for all future nightly builds and we are integrating a fuller suite of tests for Mono into our build process â€“ so take LightSpeed for a test drive on Mono today and let us know how you find it! Remember to check out the Getting Started screencast to learn how to get up and running quickly with LightSpeed and post your feedback in the forums! :)