[fpc-pascal] .NET FAQ

Marco van de Voort marcov at stack.nl
Tue Oct 3 23:23:51 CEST 2006

> On Tue, 3 Oct 2006, Marco van de Voort wrote:

> > IMHO it would be better to start over legacy free for .NET and really target
> > the .NET/JVM/LLVM platform 100%. 
> > 
> > I think that single source combinations are already all gone by the time we
> > would enter production with a .NET port. And even if, a single source system
> > would put a break too much on the mutual development.
> So you would go the VB way: VB.NET completely broke existing VB code.

No. I didn't say I even want to keep the appearance that I kept that.

> The advantage of Delphi was exactly that it offered a transition path...

In the few cases I actually bothered to try, it was more on paper than in
reality. Components, lowlevel code, nonsupported database drivers, you name
it, it all meant rewrite of most of the code to a library (VCL.NET or at the
website ASP.NET 1.x) that was already considered a transition horse, and
another rewrite already appeared on the horizon "to really make good use of
the nice features that .NET has to offer". And then again when Borland
finally manages to push a 2.0 version out of the door.

> I don't consider that wise. 
> What is more, we don't have the manpower to maintain 2 source systems.

I did't have the even larger manpower to rewrite twice or thrice shortly
after eachother. (in the end it was decided to put the native code into
maintainance, and to develop a new system directly in VS2005 and finance it
with the customers that directly benefitted from going to the new system.
(e.g. because they integrated with existing .NET stuff)

HOWEVER, even _if_ I give you the Borland case (I don't, but everybody is
entitled to his own opinion of course, and everybody can be wrong), do you
think that philosophy holds true for us too?
>From a marketing perspective (for Borland) it is perfect:
- They show a path of least resistance, a lot of users are going to take,
even though it is actually the hard way.
- They get paid for it.
- They avoid mass evaluation of alternate solutions.
- If .NET somehow stalls, they still have win32.
- give them a C# compiler for the same money, and then hope a percentage
will slowly transition. Mainly because it is the perceived .NET language of
preference. Then tighten the noose of the legacy Delphi.NET. Result: same
conversion with less defection to MS then saying directly "Delphi is dead,
use Borland C#".

So now apply the above points to us? Do we gain from that? We won't get a
single additional user till we are at least somewhat in the league of
Delphi, while we have to neglect and compromise native to actually pull it
off. Even Borland only managed to include some open source routines from
Fastcode and some minor .NET language compat stuff in post D7 native

IF .NET really is so succesful, we only will have something productworthy
when native is already dead, and most backwards compat is already

If it is not so succesful (e.g. a certain double digit percentage of users
stays native) , or it is, but we can't get a piece of the pie because we are
late, and legacy carrying non sexy, we have put gigantic effort in something
new for nothing, drawing resources away from native development, like
Borland did from win32.

It took us over 7 years to get on par with native Delphi after starting
Delphi compat mode. Do your really want to start Delphi.NET now? I've seen
the shear size of e.g. C# in VS2005 when I worked with it for a few weeks.
It absolute dwarfs Delphi syntax in size, and worse, there are a lot of
additional tools to be developed to take actual use of this (e.g. all the
database binding directives). And all the while when we are implementing
this, we'll get the standard reaction "nice, but not ready yet".

More information about the fpc-pascal mailing list