[fpc-devel] type discussion

Vinzent Hoefler JeLlyFish.software at gmx.net
Thu Jun 2 16:58:20 CEST 2005


On Thursday 02 June 2005 13:54, Sebastian Kaliszewski wrote:
> Vinzent Hoefler wrote:
> > On Thursday 02 June 2005 13:04, Jamie McCracken wrote:
> >>However, in general Pascal has poor developer productivity when
> >>compared to modern languages like python and C#.
> >
> > In terms of _written_ or in terms of _working_ lines of code? :->
>
> Both in fact as they are directly correlated.

No, they aren't (or let me put it this way: It depends on what you 
measure). For instance, studies indicate that there are ten times more 
errors code in C code then in Ada code once you've delivered the 
software.

> The studies show that in high level languages (C nothwithstanding)
> there is very evident but simple correlation -- number of programmer
> errors per language construct (typically in not obfuscated code it's
> very close to the number of not empty & non comment source lines) is
> independent of the language.

You must have read different studies. :) A while ago Lockheed Martin 
switched to SPARK code (which is a statically proven version of Ada) 
and they claimed this saved them about 80% of development cost compared 
with former projects of the same size (and we're talking about a flight 
control system of five million lines of code here).

> C++ (pre stl) was worst there, Python, Perl & likes were the best,
> Java was not that bad but still about 30% worse thatn Python (C++ was
> 100% i.e 2x worse).

What did they actually measure? Which languages did they compare. The 
list above is all (except Python) more or less C-ish or even worse 
syntax.

> The biggest boost to effectivanes was bring by
> introducing automated memory management (i.e. getting rid of explicit
> memory freeing).

Which is something you definitely don't want in large scale realtime 
systems.

> So even languages with ugly C-ish syntax like "Perl
> the awful" can beat otherwise elegant & clean languages.

Of course they can under certain circumstances. Just as a bubble sort 
can beat a quick sort algorithm if you feed the "right" input.

> Hence
> probably the greaytest impact on Objective Pascal productioveness
> would come from allowing programmers to declare classes like self
> managing (self freeing, not needeing explicit destructions).

Maybe, yes. But I'm old school. I like to handle memory myself. And I 
still need less than 2 MB while a Java VM is still loading its 100 MB 
foot print into memory. ;->


Vinzent.

-- 
public key: http://www.t-domaingrabbing.ch/publickey.asc





More information about the fpc-devel mailing list