Delphi - 2012/02/29 C++Builder - 2011/12/20 Delphi Notes Weblog FireMonkey - 2012/02/29 Prism for .NET - 2011/09/05
Dr.Bob's Delphi Notes Data Abstract Delphi books at Lulu.com
 Dr.Bob's Prism for .NET Clinic
 This section of Dr.Bob's Delphi Clinic is devoted to news about Prism XE2 - the Oxygene-based Visual Studio plugin.

2011/09/02 - Prism XE2 and Oxygene
The XE2 edition of "Delphi Prism" is now just called "Prism", so a few days ago Embarcadero released Prism XE2 in two editions: Professional and Enterprise.
RemObjects Software selling the same thing using the "Oxygene" brand. Oxygene 5 for .NET is the same as Prism XE2 Professional (note that there is no counterpart for Prism XE2 Enterprise - sold only by Embarcadero). RemObjects Software is also working on a Java edition of the Oxygene compiler, producing Java Byte code from your Oxygene source code (this will be called "Oxygene for Java"). It will be interesting to see if they plan on producing an online QR code generator in the future.


2011/04/08 - Delphi Prism XE Update 1 is now available
Update 1 is now available for Delphi Prism XE. This update fixes a number of issues throughout the product. The update is available to registered users of Delphi Prism XE, RAD Studio XE, and Embarcadero All-Access.


2011/01/20 - RAD Studio Quality Survey
Embarcadero cares a great deal about your experiences with our products. They are continually striving to make them better based on user feedback.
Director of Quality Assurance, Chris Pattinson invites us to complete the Embarcadero 2011 RAD Studio Quality Survey. This 23 question survey is for all users of C++Builder XE, Delphi XE and RAD Studio XE, and will take approximately 15 minutes to complete. Your contact details are optional, and will only be used if you agree for us to contact you with any follow-up questions. Thank you for your participation!


2010/11/03 - Advantage Database Server Training Day in Utrecht, NL
I have presented two (Dutch) Delphi sessions at the Advantage Database Server Training Day - Nov 3rd, 2010 in Utrecht, The Netherlands.
In this article, I demonstrate the use of ADS as a web database for an ASP.NET web project (written using Delphi Prism XE) that implements a registration form for events and seminars.


2010/10/08 - Securing Chat Server with SOAP Headers
In this article, I'll demonstrate how we can secure the (Delphi Prism XE) ASP.NET chat server with SOAP headers, so not every (un-authorised) client application can "break in" and participate in the chat. This article was the basis for my CodeRage 5 session on Friday, October 8, 2010.


2010/08/31 - Delphi Prism XE
The XE editions of Delphi, C++Builder, Delphi Prism and RAD Studio (which includes the aforementioned three plus RadPHP) have just been released. New User licenses of Delphi Prism XE can be purchased now from me (which will include a free copy of my RAD Studio XE Development Essentials PDF, ready by the end of this month).


2010/08/12 - New RAD Studio Roadmap
An updated RAD Studio, Delphi and C++Builder Roadmap is published on the Embarcadero Developer Network.


2010/06/11 - Free Delphi Prism 2011 with RAD Studio 2010
From May 26th until September 15th 2010, Delphi Prism 2011 will be included free of charge with any purchase of RAD Studio 2010 (so it might be likely to assume that RAD Studio 2011 will be available after that time).


2010/05/26 - Delphi Prism 2011 available
Delphi Prism 2011 is now available for purchase, and subscription notification e-mails are being sent our for developers with an active Delphi Prism or RAD Studio subscription.


2010/05/23 - Delphi Prism 2011 has RTMed
As read on the RemObjects Blog: Delphi Prism 4.0.23.741 is the RTM build of the next version, which includes support for Visual Studio 2010 and MonoDevelop. Delphi Prism 2011 will install into an existing version of VS2010 and/or VS2008, or come with and install its own copy of the Visual Studio 2010 Shell, if you don’t own VS2010 yourself.
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!


2010/05/10 - Delphi Prism Roadmap
Embarcadero has just published the new RAD Studio Roadmap. This Roadmap includes information on the upcoming Delphi Prism 2011, Delphi Prism in Project Fulcrum, in Wheelhouse and Commodore - there are lots of good things planned.


2010/03/01 - Delphi Prism ASP.NET web chat service
In this article, I'll demonstrate how we can use Delphi Prism and ASP.NET to write a web chat service, consuming it in an ASP.NET web form as well.


2010/02/15 - Delphi Prism support for Visual Studio 2010 and .NET 4.0
Embarcadero has just announced their upcoming plans to simultaneously ship an updated version of Delphi Prism with Visual Studio 2010 (and .NET 4.0) by the end of May 2010.


2010/01/12 - Sneak Peak: Code Obfuscation in Visual Studio, with Oxfuscator
See Marc Hoffman's blog post for a sneak peak at a new code obfuscator solution for .NET that RemObjects Software has been working on.


2010/01/07 - Delphi Prism White Paper
Embarcadero has just published Brian Long's white paper on Delphi Prism - everything .NET with your development language of choice. In this paper Brian Long provides everything we need to start moving our .NET application over to Mac using Delphi Prism. Brian introduces the main differences we will notice when working on a different platform, through getting a simple console app up and running, to GUI toolkits and data access.
The white paper also includes a number of videos, and is available as PDF.


2009/12/04 - Microsoft Case Study: Delphi Prism
Microsoft has posted a nice Case Study on their website which covers Delphi Prism as Visual Studio Shell (Integrated Mode) application.


2009 November - Delphi 2010 and WCF Clients
In this article, I'll demonstrate how we can use Delphi 2010 to import and consume WCF (Windows Communication Foundation) applications (written using Delphi Prism in the June 2009 column).


2009/09/08-11: CodeRage IV
CodeRage IV is a virtual conference starting Tuesday, Sept 8th, 2009 (5:00 PCT - 14:00 GMT+1) until Friday Sept 11th, 2009. It's free, but you need to register in order to be able to attend the sessions.


2009/09/02 - Dynamic Compiling with Delphi Prism
Jamie's Blog features a nice post about Dynamically compiling code with Delphi Prism.


2009/08/25 - Delphi Prism 2010
Today, Delphi Prism 2010 was launched and is available for purchase. You can read more information in the Release Notes, or in the RAD Studio 2010 product page.


2009 June - Delphi Prism and WCF
In this article, I'll demonstrate how we can use Delphi Prism to create WCF (Windows Communication Foundation) applications, a logical follow-up from the SOAP articles in the previous months.


2009/05/18 - Delphi Prism May 09 Update
The May 2009 release of Delphi Prism should very soon be available for registered Delphi Prism users (if you have an active subscription, stay tuned to an e-mail from Embarcadero with more details).


2009 May - Delphi Prism and Http Handlers
In this article, I'll demonstrate how we can use Delphi Prism to create Http Handlers that return just about anything (images in my example, but this could also be XML or PDF files).


2009 April - Delphi Prism Web Services and SOAP Security
In this article, I'll demonstrate how to use SOAP Headers as security technique for ASP.NET Web Service projects using Delphi Prism (extending the example from last month by adding a security layer to it).


2009/04/13 - ASP.NET Generic Handler doesn't compile
In this report, I'll describe a Delphi Prism problem with the ASP.NET Generic Handler template which produces source code that doesn't compile. The report is opened, but not reported as fixed, yet.


2009/04/13 - ASP.NET Web Method attribute in wrong place
In this report, I'll describe a Delphi Prism problem with the [WebMethod] attribute being generated in the implementation instead of the definition of a web method. The report is opened, but not reported as fixed, yet.


2009/04/10 - C# to Oxygene
Carlo Kok of RemObjects Software has released CS2Pas, a simple tool based on the MicroCS parser to convert C# to Oxygene code.


2009 March - Delphi Prism Web Service Projects (and Session Info)
In this article, I'll demonstrate the new Delphi Prism ASP.NET projects with Web Services, and how to use the Session to store and retrieve information.


2009/03/12 - Delphi Prism Feb 09 Update
The February 2009 release of Delphi Prism is now available for download for registered Delphi Prism users. You can select three possible downloads:

See the readme and the list of fixes.

2009 February - Consuming Web Services with Delphi Prism
In this article, I'll demonstrate how to consume and use Web Services using Delphi Prism again, showing how to make synchronous as well as asynchronous calls to the web methods.


2009/02/06 - Delphi Prism and "Cirrus"
Check out these two blog posts for a first glimpse at "Cirrus", a major new language feature that is in the works and will add extensive support for Aspect Oriented Programming (AOP) to the Delphi Prism language. Cirrus is currently in still in alpha, but will ship later this year, as part of a free update release for all active Prism customers.

Stay also tuned to the Cirrus hub page on the prism Wiki, as more information becomes available:

2009/02/02 - Delphi Prism Roadmap
The Delphi Prism Roadmap has been published. In summary, future versions of Delphi Prism will focus on:


2009 February - Delphi "Prism" Beta
Embarcadero beta programs are designed to meet the needs of customers and internal development teams during the launch of a new version a product. The beta test process helps Embarcadero determine the quality of a product before it is released to the general public.
February 2009 is the estimated start date of the Delphi "Prism" Beta.


2009 January - ASP.NET Web Services with Delphi Prism 2009
In this article, I'll implement and deploy an ASP.NET SOAP Web Service with Delphi Prism 2009, writing a web method that can convert numbers to (Dutch) words.


2009/01/10 - Favourite Delphi Prism Technology Partner Product Nominations
Use this survey to tell Embarcadero about your favourite Delphi Prism add-on tool or component set.


2009/01/07 - Delphi Prism video replays from CodeRage III
Video replays from Delphi Prism sessions at CodeRage III are now available on the Delphi Prism videos page on the Embarcadero Developer Network. The available videos include:

You'll also see them listed in the news feed on the Delphi Prism start page.

2009/01/07 - Delphi Prism Trial Edition
A fully functional trial edition of Delphi Prism 2009 Enterprise is now available for download. The Delphi Prism trial is also available as part of the RAD Studio 2009 Architect trial (which also includes Delphi 2009, C++Builder 2009 and ER/Studio Developer Edition).


2009/01/06 - .NET Rocks!
In episode #409 of .NET Rocks! Carl Franklin and Richard Campbell talk to Nick Hodges and marc hoffman about Delphi Prism among others.


2008/12/01-05: CodeRage III
CodeRage III, was a full week of online sessions on Delphi 2009, Delphi Prism and more. I have presented two session using Delphi 2009 as well as Delphi Prism. Replays are now available.


2008/10/27 - Delphi Prism Announced
Embarcadero announced Delphi Prism, the new .NET development solution from Embarcadero Technologies. Using Delphi Prism (a Visual Studio Shell plugin based on the Oxygene compiler technology from RemObjects Software) we can use existing Delphi programming skills to build .NET applications, taking advantage of the latest and greatest .NET technologies such as WinForms, WPF, Silverlight, ASP.NET and LINQ. Delphi Prism will also contain familiar dbExpress functionality and .NET clients that connect to native DataSnap servers.
Delphi Prism Architect will include database modeling and design capabilities based on ER/Studio that enable developers to design, model, and better understand their databases.

Delphi Prism will be the .NET portion of CodeGear RAD Studio 2009. CodeGear RAD Studio 2009 is scheduled to ship at the same time as Delphi Prism. For more information, see the FAQ.


2008/10/06 - Delphi Prism
At the Software Development Conference in The Netherlands, Nick Hodges disclosed details about Delphi Prism, which will be a Delphi.NET Visual Studio (Shell) plug-in (enabling the WinForms, WPF, ASP.NET, LINQ, SilverLight, etc. designers - but not CF.NET or WorkFlow). They also plan to include dbExpress for ADO.NET and DataSnap for .NET clients (and in the future .NET servers). That will offer connectivity to more DBMSs than just Visual Studio (and thin/smart clients to DataSnap Win servers), which is a big plus over "regular" Visual Studio solutions. Nick also mentioned that the language would be superior to C# in some areas (for that, we have to wait and see).
Delphi Prism will be a separate product, but it's also part of the RAD Studio 2009 package (which will consist of Delphi 2009, C++Builder 2009 and Delphi Prism). Delphi Prism will be sold with subscription only (which will make it easier to release upgrades and updates during your subscription period without caring for new versions, upgrade prices, etc.).
CodeGear will be at PDC at the end of this month, were Nick said they would do the announcement. Nick also said that Delphi Prism will be available before the end of this year.


2008/08/25 - The Beginning...
marc hoffman just wrote in his blog: "Papers signed. Popcorn ready. Let the games begin."


2008/05/01 - Chrome -> Oxygene
Today marks the 3rd anniversary of Chrome, and the rebranding to Oxygene, taking the language to the next level.
As a result, this section of my website will be renamed from "Chrome Shines" to Dr.Bob's Oxygene Flow.


2007/05/12 - 3 Cool 'Joyride' Features
Joyride is the codename of Chrome 2.0, and Marc Hoffman has just published a new blog post in which he covers three cool new features of Joyride:

Check it out!

2006/11/07 - Windows Presentation Foundation with Chrome
A nice new video on the RemObjects website shows how we can use RemObjects Chrome for Visual Studio to build Windows Presentation Foundation applications.


2006/10/27 - RemObjects Chrome 1.5.5
Version 1.5.5 of RemObjects Chrome is now available for download in three editions: the free RemObjects Chrome 1.5 Command Line Edition, the free RemObjects Chrome for Mono, and the RemObjects Chrome 1.5 for Visual Studio 2003 and 2005. The free Command Line edition supports .NET 1.1, .NET 2.0 as well as Mono 1.1.


2005/11/07 - RemObjects Chrome 1.5
RemObjects Software has announced the immediate availability of Chrome 1.5, the latest version of its next generation Object Pascal Compiler for the Microsoft .NET and Novell Mono platforms that combines the elegance of Pascal with the power of the Common Language Runtime.
Version 1.5 is an important step in the evolution of Chrome, enhancing the language with new features such as full support for Generics, Nullable Types and Iterators, and providing more IDE productivity enhancements such as Sync Rename and Auto Member Declaration.
Chrome 1.5 also provides full support and integration with the new Visual Studio 2005, launched today by Microsoft, enabling Chrome users to leverage all the features of the new IDE and the new .NET 2.0 Framework. Chrome 1.5 integrates with the new Visual Web Developer project system included with Visual Studio 2005, which makes Chrome a first class language for ASP.NET 2.0 development.


2005/07/01 - Chrome goes Gold
RemObjects Software has just announced that the gold version of Chrome is now available. Chrome provides many enhancements and features like Class Contracts, Generics, full namespace support, virtual properties and asynchronous methods.
Chrome integrates fully with Microsoft Visual Studio .NET 2003 and Visual Studio 2005. A free Command Line Edition is also available.


2005/06/01 - Bitwise Magazine
Bitwise Magazine is a free on-line computing magazine with features on Delphi, C#, and more, including an interview with marc hoffman - chief architect .NET at RemObjects software - makers of Chrome: Object Pascal for .NET and Mono!
"The purpose of Chrome is to provide language innovations that are not happening on the Delphi front"


2005/05/17 - Dutch Chrome article
I've just published a Dutch article and three small sample projects (an empty skeleton, a simple demo, and a memory game) using the Chrome command-line compiler.


2005/05/01 - RemObjects announces Chrome
RemObjects Software is proud to finally unveil Chrome, its long awaited Object Pascal language for the .NET and Mono Platforms. Chrome provides many features that improve and expand upon what has been available in classic Pascal and Object Pascal compilers. Some of its most notable features include Class Contracts, Generics and many more.
Chrome integrates fully with Microsoft Visual Studio .NET 2003 and Visual Studio 2005. A free Command Line Edition is also available.


2005/03/22 - Generics in Chrome
RemObjects Software has just published a new article on Chrome: Generics in Chrome. Generics are a new feature of the Whidbey framework. While the Chrome compiler includes full support for generics in Chrome 1.0, please note that this feature is only available when compiling your Chrome applications against Whidbey.


2005/03/14 - ASP.NET Scripting with Chrome
RemObjects Software has just published a new article on Chrome: ASP.NET Scripting with Chrome.


2004/11/25 - Chrome at SDE in The Netherlands
December 17th 2004 RemObjects Software will be present at the Software Developer Event organized by the Software Developer Network (SDN) in The Netherlands.
The theme of the event will be 'Mobility' and Mike Orriss from RemObjects Software will host two sessions:

  1. Building Mobile Applications with the RemObjects SDK for .NET
    Mike will demonstrate how to leverage the newly released RemObjects SDK for .NET to build mobile client applications for Pocket PC and Smart Phone devices that can talk to backend servers implemented in .NET or Delphi.
  2. Introducing Chrome for the .NET Platform
    Mike will introduce Chrome, the Next Generation Object Pascal language from RemObjects Software. He will show how to take advantage of the new language in developing applications for the .NET and Mono platforms.
RemObjects Software will distribute a free CD-Rom to all participants, containing a demo version of Chrome as well as other products!

2004/10/19 - More on Async Methods in Chrome
Xavier Pacheco has been exploring asynchronous methods (threading) a bit more, and has written two blog entries (comparing C#, Delphi and Chrome). His first entry is about the simplest invocation of an asynchronous method: without any parameters. His more recent entry shows how each language deals with methods that take arguments.

Note however that his Chrome code sample really doesn't need to use a wrapper class (or the System.Threading namespace). A much simpler code example is as follows:

  namespace ChromeThreadParamsEx;
  interface

  type
    ConsoleApp = class
    public
      class method Main;
      method ThreadProc(aMyString: String; aMyInt: Integer); async;
    end;

  implementation

  method ConsoleApp.ThreadProc(aMyString: String; aMyInt: Integer);
  begin
    for i:integer:=1 to aMyInt do
      Console.WriteLine(aMyString+' '+i.ToString);
  end;

  class method ConsoleApp.Main;
  begin
    with tr:=new ThreadWrapper do
      tr.ThreadProc('Hello', 10);
    Console.WriteLine('Without the wrapper class!');
  end;

  end.

2004/09/24 - Async Methods in Chrome
With permission from marc hoffman, I can show you another little teaser of Chrome, featuring a language feature "async", to produce async threaded methods.
The best way to illustrate the feature is to take a closer look at the following sample code:

  namespace DrBob42;
  interface

  type
    ConsoleApp = class
    private
      method Test(X: Integer); async; // this is the new keyword
    public
      class method Main;
    end;

  implementation

  class method ConsoleApp.Main;
  begin
    with new ConsoleApp do
    begin
      for i:integer:=1 to 4 do Test(i);
      Console.ReadLine();
    end;
  end;

  method ConsoleApp.Test(X: Integer);
  begin
    for i:integer:=1 to 4 do
    begin
      Console.WriteLine(X.ToString+'-'+i.ToString);
      System.Threading.Thread.Sleep(100);
    end;
  end;

  end.
As you can see, four calls to Test are made, which execute as asynchronous multi-threaded methods. Due to the "long" delays of 100 ms in the Sleep statements, the four threads will each print their first number before going to the second round, etc. so the output should be:
  1-1
  2-1
  3-1
  4-1
  1-2
  2-2
  ...
  4-4

2004/09/19 - Chrome visibility specifiers
Chrome is going to support all visibility scopes provided by .NET, including what IL calls "family or assembly" (accessible from descendants and from anywhere in the same assembly; ie a looser protected) and "family and assembly" (accessible only from descendants that are in the same assembly; ie a stricter "protected"). "private" and "protected" will be what they should be, really private and really protected, respectively.
This results in the following list of the different visibility sections:

These specifiers apply to class members (with "private" being the default). In addition, the "public" and "assembly" specifiers can also be applied to types, such as
  type
    MyClass1 = public class ... end;
    MyClass2 = assembly class ... end;
where "assembly" is assumed if none of the two is specified (iow, unless stated otherwise, your classes are accessible only from within the assembly).

2004/09/02 - RemObjects Chrome Announced
Chrome is RemObjects' next generation Object Pascal language for the .NET and Mono Platforms. While implementing a language that stays true to the beauty and elegance of Object Pascal, Chrome adds useful design elements from other languages such as C#, Java and Eiffel, and it introduces its own language innovations.
Developers can use Chrome to write fully managed native .NET applications for the Microsoft .NET Framework, the Compact Framework or the Mono Platform, and develop our applications inside the Visual Studio .NET IDE.


2004/09/01 - Rethinking Pascal
The September 2004 issue of The Delphi Magazine features an article by Julian Bucknall, where he checks out a beta version of RemObjects’ Chrome product: a totally new implementation of the Pascal language for the .NET framework, that plugs into Microsoft’s Visual Studio for .NET. Although Chrome was an unfinished product (at the time of writing), there are lots of new ideas and language features that will give Delphi developers pause for thought: this is certainly one article that you will not want to miss! Could this be the future of development for the .NET environment for Delphi developers, or should we stick with the Borland language and IDE?


2004/08/13 - Chrome Cross Linking
Building .NET applications or assemblies usually means binding to one specific version of the .NET Framework, which means it's not always possible to use an assembly or application on another version (or on the Compact Framework or Mono for example).
In order to support developers who want to target different versions of the .NET Framework (including the CF or Mono), Chrome offers a feature called Cross-Linking, where you can use the compiler under .NET 1.1 or 2.0 but still link against alternative CLR assemblies.


2004/08/12 - What is Chrome?
Chrome is a .native NET compiler for a Pascal based language (not Standard Pascal, nor ObjectPascal or Delphi). Chrome does not support all Delphi language features (and vice versa), but it will not be very hard to port Delphi code to Chrome (or back), or even write source code that can be compiled in both Delphi and Chrome (probably with the use of some IFDEFs).
Since Chrome is from the same people who made RemObjects, it's probably no surprise that RemObjects SDK for .NET will work just fine with Chrome.


This webpage © 2004-2010 by Bob Swart (aka Dr.Bob - www.drbob42.com). All Rights Reserved.