Avatar of marc

by

Delphi Prism 2011 has RTMed

May 23, 2010 in .NET, MonoDevelop, Oxygene, Prism, Visual Studio

Last night, we ran the RTM build of the latest Delphi Prism release.

Delphi Prism 4.0.23.741 is the result of over a year of work from the team here at RemObjects, and marks the probably single biggest release we ever have done, since ‘Chrome 1.0″ shipped back in the spring of 2005.

The Road to a New Project System

The funny part is that the biggest new feature is one that most users will not notice, or take for granted – and that is  a complete rewrite of the core IDE integration engine. You see, back when we first shipped the product, Visual Studio .NET 2003 was the latest version of Visual Studio, and the way to integrate with that was cold, hard C++. We didn’t like it, but we had no choice. We tried to implement large parts of our IDE smarts (code model and code completion, these sorts of things) in managed code, but the crucial parts that talked to Visual Studio, the parts that were the most difficult, were done in C++

With Visual Studio 2005 and later 2008, Microsoft introduced the option to create full project systems in managed code, but for one reason or another, we never made the switch. The thing was working, after all. and we had better things to do with our time, like adding new features.

With Visual Studio 2010 looming ahead, and with integration into MonoDevelop also starting to look like more of a possibility, we finally made the plunge last year, after the Spring 2009 release was out the door, and started serious work on the new project system. We did a lot of refactoring, to separate VS-specific code from generic code, with the goal to be able to share as much code as possible between IDEs, and have as little IE specific code for Visual Studio or MonoDevelop, as we could get away with.

This all progressed great, but as the August 2010 release date was approaching, we realized there was way too much work ahead of us, too many Ts to cross and Is to be dotted for us to deliver a quality release based on the new code, so we rowed back, and in a branch of our VSN repository combined the old “May 2009″ IDE code base with the latest compiler, to ship the August release, “Delphi Prism 2010″. At the same time, work went on in the main trunk, on the new project system, which we are now shipping, half a year later after having waited for MonoDevelop 2.2.2 and Visual Studio 2010 to finalize.

So, the big feature for this release, as far as we are concerned, is that you don;t really see a difference between this release and the last, but that Delphi Prism is seamlessly integrated into two brand new IDEs: Visual Studio 2010 and MonoDevelop.

Visual Studio 2010

Along with Visual Studio comes of course a host of new features – i’m tempted to say ‘for free” when of course many of these have been a lot of work under the hood, for us. There’s support for the new Silverlight 4, better WPF support and – most importantly, the new .NET 4.0 runtime, which allowed us a lot of new and advanced compiler features, from Dynamic Types over Tuples and Big Integers to obscure (but cool) things such as generic co- and contra-variance.

There’s also things that truly do come for free with the new IDE, such as new new WPF based code editor (which is very nice to use and due to WPF’s smooth (and dare i say Mac-like) font rendering very easy on the eyes. There’s also the new Visual Studio debugger, which as been vastly improved in many areas, not the last of which the debugging of multi-threaded programs. The list goes on – just search for what’s new in VS2010, and the vast vast majority of what you’ll find will apply to the new Delphi Prism.

Of course Delphi Prism 2011 will install into an existing version of VS2010, or come with and install its own copy of the Visual Studio 2010 Shell, if you don’t own VS2010 yourself. (Delphi Prism 2011 will also still install with Visual Studio 2008, if present, but it won’t bring it’s own copy. If you need both VS2008 and VS2010 on a fresh install, you can install the August 2009 release, and then upgrade to the new version, to get both Shells)

MonoDevelop

But wait; Visual Studio is not where it ends. Delphi Prism 2011 also supports MonoDevelop 2.2, on both Windows and Mac OS X. When you run the Delphi 2011 installer, it will automatically detect MonoDevelop (if present) and offer to register with it, or offer to freshly install MonoDevelop 2.2.2 for you, if you don;t have it yet.

So you can choose to use either VS, MD or both IDEs, depending on your preference.

For the Mac, we have a separate distribution of MonoDevelop.app that includes Delphi Prism; this will be a .zip file on your ISO or DVD that you can simply unzip on your mac and copy to the Applications folder.

On both Windows and the Mac, Delphi Prism integration into MD will give you the full development experience that MD has to offer. This includes the Gtk# visual designer on Windows (the MonoDevelop guys don’t yet support that on the Mac, i’m afraid), integration with MonoTouch (if you own a copy) on the Mac, and so on.

Of course MonoDevelop as an IDE is still very young, so compared to Visual Studio there is still a lot of catching up that needs to be done, both on the IDE itself, and on the more advanced IDE features that Delphi Prism supports. Our goal for this release was to provide a basic set of functionality that allows you to start working and be productive in MD. Over time, we’ll work on feature parity with VS, bringing more of the advanced features (such as “Paste C# as Oxygene“, or the Oxfuscator integration) over.

We’ll also be working on adding support for Linux as third MonoDevelop platform to Delphi Prism.

What Else?

Of course there’s a lot more to Delphi Prism 2011 than “just” two brand new IDEs. I finalized the official change log for this release a couple days back, and amazed to see that we have close to 400 bug fixes and minor improvements thru-out the product (and that does NOT even include any fixes and enhancements that happened witjhin the product cycle [such as, any "fix" related to VS2010 or MD support, which never shipped before]. that’s just fixes and improvements over the previous August 2009 release.

There’s also roughly 30 major new features (such as for example new Expression types, MacPack Integration, a cross-platform helper library for Mono) and 30 less major but noteworthy  enhancements (such as enhanced functionality in Cirrus, compiler optimizations, framework multi-targetting or support for T4 template files).

What’s Next?

The next release of Delphi Prism is already looming ahead, this fall alongside the new RAD Studio. Because  the current release was such a major milestone (and is shipping such a vastly new codebase, for the core IDE integration), we’re planning for that next release to be a pure maintenance and bug-fix release only. To start with, our team here at RemObjects will take a week or two off to recover from the rush of getting such a major release out the door.

After that, we’re planing to get back to a regular cycle. We want to release weekly new beta releases (as we have done over most of the course of this past beta cycle), combined with monthly “stable” releases that focus on  fixes and improvements in various areas of the product. The idea is that (if you join the beta program – and remember, every Delphi Prism customer is welcome to join, and we’d welcome your feedback),  you have the choice of frequent latest builds, or regular “production level” builds, as we move from the current release towards the August 2010 one.

When can You Get it?

As mentioned at the beginning, the RTM build was signed off to the team at Embarcadero yesterday. The team in Scott’s Valle will go thru some final QA cycles and prepare for the distribution to customers. If all goes well, i’m told the new release should be in the hands of people within about a week, both as new public trial, and as free update to all customers with Software Assurance (you do have Software Assurance, right!?).

Even if i were to just link to the direct download, for this release you will need a new serial number, which you should receive from Embarcadero in time.

 

Thanx for reading, and i hope you’ll enjoy Delphi Prism 2011 as much (if not more ;) as we have enjoyed creating it. Let us know what you think, either here, via email, or on the ongoing beta program.

20 responses to Delphi Prism 2011 has RTMed

  1. Congrats to the Prism/Oxygene team!

    Warren

  2. When do you write a book for DelphiPrism, like you did for BorlandBuilder C++ or Delphi. I prefere to have a documentation in my hands. wiki is in my maind not so “comfortabel” for learning something…

    After which date I /we can calculate with a DelphiPrism for Linux? ….in DelphiPrism 2012 ???
    I think the project Lazarus (freepascal) is more and more a big concurenc for you, while it’s working for Win, Linux and Mac and the look is like Delphi.

    regards
    A.Lüthi

    • marc said on May 28, 2010

      We currently don’t have any plans for a “real” book about Delphi Prism. There’s very little demand in the publishing industry for books on anything but the few main mainstream development tools (C#, C++, more recently, Objective-C), etc. so it is hard finding a publisher that is interested. Even if we did, it’s still be a lot of work writing one ;)

      For now, at least from RemObjects side, were concentrating on the wiki as the central place for documentation. Sorry.

      As for MonoDevelop/Linux, we don’t have a concrete timeline i can commit to, but i would expect support for that with our next major release (ie probably not the one coming this fall, which will, as explained, mainly be a maintenance & quality release, and already has a very short product cycle (it’s almost June, and RTM is planned for late July – that’s not a lot of time).

  3. Hi,

    I got the RTM downloaded, how do we get the Serial key?

    Regards
    Baliga

    • marc said on May 28, 2010

      As indicated in the post, you will receive email fro Embarcadero with your new serial, within a week or so, once Delphi Prism 2011 is officially available. This is assuming you have an active SA.

      if you were on the field test, then your current field test serial number would also work with the RTM build.

  4. Hello:

    There is already a book on Delphi Prism (http://www.intelsoftassociates.com/blog/?p=37) addresses all aspects of language.

    And soon write a book Data Access with ADO.NET and Delphi Prism and dbExpress.

    I have also several courses available on Delphi Prism (http://is.gd/ctHfv) from basic to advanced level.

    The only thing is that they are in Spanish.

  5. Sounds like a very nice release and I would have really liked the VS2010 support.

    I just the other day got to update my RAD Studio to 2010 (from 2009) and was foolishly expecting to get the latest Prism release.
    But it seems only the old version is included, so no Prism for me.

    It would be nice with some consistency, when I updated to RAD Studio 2009 I got the Prism version that was latest at the time of the update.

  6. Yes! I get to play around with Prism 2011 anyway.
    With this promo:
    http://www.embarcadero.com/products/rad-studio/prismoffer

  7. Dan said on July 15, 2010

    Sirs,

    I have downloaded the ISO of delphi prism 2011 and installed it on my windows 7 box without problems but cant find the zip file of which you speak for installing it on the Mac side? Where can I find the mac installation with monodevelop for iphone development?

    Thanks,

    Dan

  8. Still no expression blend support what a shame again back to c#!!

    • Expression Blend doesn’t support extensibility. there’s nothing we can do, it’s up to Microsoft to open that up.

  9. Rather explain how can I use the GUI generated with expression blend 4 with Delphi Prism XE for VS 2010.

    If at all can be used…Couse visual studio 2010 is very bad for GUI design

    Thanks!

  10. Marc, you mentioned above that you are planning a Prism version for Linux.

    Do you have any idea when this might happen?

    I have some planning decisions about software routes to make and I would love to be able to use Prism on my Linux boxes.

    Regards,
    Mike.

    • We’re planning to have MonoDevelop/Linux support in the next release, coming in the Spring of 2011. me may have it in beta sooner hopefully before the end of the year.

  11. hi marc….

    sharpdevelop integration would be great

  12. Hi Marc,

    How is the development of the MonoDevelop/Linux supported Delphi Prism coming along?

    Regards,
    Mike.

    • Don’t laugh, but we’re waiting for one thing, and one thing only: Sanctuary libraries for Linux.

  13. Well Mike how can we use expression blend.Whats the point of developing for wpf/Silverlight if you cant use expression blend.