[fpc-pascal] data queue

2006-03-03 Thread Mattias Gaertner
Is there already a data queue in the RTL/FCL?
Something which supports Push(Stream,Count) and Pop(Stream,Count)?


Mattias
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] data queue

2006-03-03 Thread Michael Van Canneyt



On Mon, 27 Feb 2006, Mattias Gaertner wrote:


Is there already a data queue in the RTL/FCL?
Something which supports Push(Stream,Count) and Pop(Stream,Count)?


No. Feel free to contribute one :-)

Michael.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


[fpc-pascal] Test

2006-03-03 Thread Florian Klaempfl

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Better random numbers ?

2006-03-03 Thread Tomas Hajny
On 27 Feb 06, at 1:15, A.J. Venter wrote:

  Some other workaround that comes to my mind is to do something like
 Randomize;
 RandSeed := RandSeed * getpid;
 This worked, cut the initial generation time from about 30 seconds down to 
 under 1, of course right now it's NOT platform independent at all so I will 
 need to enhance it but I like the direction of your thinking, combining 
 randseed with some virtually guaranteed unique value solves the problem.

System.GetProcessID should be perfectly platform 
independent.

HTH

Tomas
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Better random numbers ?

2006-03-03 Thread Jonas Maebe


On 27 feb 2006, at 00:15, A.J. Venter wrote:


   Randomize;
   RandSeed := RandSeed * getpid;
This worked, cut the initial generation time from about 30 seconds  
down to
under 1, of course right now it's NOT platform independent at all  
so I will
need to enhance it but I like the direction of your thinking,  
combining
randseed with some virtually guaranteed unique value solves the  
problem.


It's not just that, but randseed is not a threadvar. This means that  
all your threads use the same randseed variable, so if two threads  
call random at the same time they will still get the same random  
number.



Jonas
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


[fpc-pascal] Polymorphism question

2006-03-03 Thread dhkblaszyk
(I sent this mail yesterday but somehow it didn't get trough, therefore a
new try)

I would like to declare a polymorph class. The class has several
properties and it's the read and write specifiers that I want to be
virtual abstract. So derived classes override the read and write
specifiers. The problem however is that I get an EAbstractError. The
property is still considered to be abstract according to the compiler. So
what did I wrong? I have added an example below.
Is it perhaps not allowed to use this construct? What would then be the
best way?
Darius

example

unit MyTest;

{$mode objfpc}{$H+}

interface

uses
  Classes, ComCtrls, SysUtils;

type
  TCustomClass = class
  private
//virtual mehods
function GetMyProperty: string; virtual; abstract;
procedure SetMyProperty(Value: string); virtual; abstract;
  published

property MyProperty: string Read GetMyProperty Write SetMyProperty;
  end;

  TMyClass = class(TCustomClass)
  private
FMyProperty: string;

function GetMyProperty: string; overload;
procedure SetMyProperty(Value: string); overload;
  published
property MyProperty;
  end;

implementation

function TMyClass .GetMyProperty: string;
begin
  Result := FMyProperty;
end;

procedure TMyClass .SetMyProperty(Value: string);
begin
  if Value = FMyProperty then
exit;

  FMyProperty := Value;
end;
end.



___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Polymorphism question

2006-03-03 Thread Tony Pelton
i'm new so grain of salt ...

On 3/3/06, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote:

 function GetMyProperty: string; overload;
 procedure SetMyProperty(Value: string); overload;

should these be 'override' rather than 'overload' ?

--
X-SA user ? 0.4 is out !
http://x-plane.dsrts.com
http://games.groups.yahoo.com/group/x-plane-foo/
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


[fpc-pascal] polymorphism question

2006-03-03 Thread Darius Blaszijk



I would like to declare a polymorph class. The 
class has several properties and it's the read and write specifiers that I want 
to be virtual abstract. So derived classes override the read and write 
specifiers. The problem however is that I get anEAbstractError. The 
property is still considered to be abstract according to the compiler. So what 
did I wrong? I have added an example below.
Is it perhaps not allowed to use this construct? 
What would then be the best way?
Darius

example

unit MyTest;

{$mode objfpc}{$H+}

interface

uses Classes, ComCtrls, 
SysUtils;

type TCustomClass = class 
private //virtual 
mehods function GetMyProperty: string; virtual; 
abstract; procedure SetMyProperty(Value: string); virtual; 
abstract; published

 property MyProperty: string Read 
GetMyProperty Write SetMyProperty; end;

 TMyClass = class(TCustomClass) 
private FMyProperty: string;
 function GetMyProperty: string; 
overload; procedure SetMyProperty(Value: string); 
overload; published property 
MyProperty; end;

implementation

function TMyClass .GetMyProperty: 
string;begin Result := FMyProperty;end;

procedure TMyClass .SetMyProperty(Value: 
string);begin if Value = FMyProperty then 
exit; FMyProperty := 
Value;end;
end.


___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Re: [fpc-pascal] Polymorphism question

2006-03-03 Thread Rodrigo Palhano

On Fri, 03 Mar 2006 04:52:36 -0300, [EMAIL PROTECTED] wrote:


(I sent this mail yesterday but somehow it didn't get trough, therefore a
new try)

I would like to declare a polymorph class. The class has several
properties and it's the read and write specifiers that I want to be
virtual abstract. So derived classes override the read and write
specifiers. The problem however is that I get an EAbstractError. The
property is still considered to be abstract according to the compiler. So
what did I wrong? I have added an example below.
Is it perhaps not allowed to use this construct? What would then be the
best way?
Darius

example

unit MyTest;

{$mode objfpc}{$H+}

interface

uses
  Classes, ComCtrls, SysUtils;

type
  TCustomClass = class
  private
//virtual mehods
function GetMyProperty: string; virtual; abstract;
procedure SetMyProperty(Value: string); virtual; abstract;
  published

property MyProperty: string Read GetMyProperty Write SetMyProperty;
  end;

  TMyClass = class(TCustomClass)
  private
FMyProperty: string;

function GetMyProperty: string; overload;
procedure SetMyProperty(Value: string); overload;
  published
property MyProperty;
  end;

implementation

function TMyClass .GetMyProperty: string;
begin
  Result := FMyProperty;
end;

procedure TMyClass .SetMyProperty(Value: string);
begin
  if Value = FMyProperty then
exit;

  FMyProperty := Value;
end;
end.



___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal



Try override instead of overload

--
Rodrigo Palhano
-
Equipe SpeedCASE

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Better random numbers ?

2006-03-03 Thread Vincent Snijders

A.J. Venter wrote:

Some other workaround that comes to my mind is to do something like
  Randomize;
  RandSeed := RandSeed * getpid;


This worked, cut the initial generation time from about 30 seconds down to 
under 1, of course right now it's NOT platform independent at all so I will 
need to enhance it but I like the direction of your thinking, combining 
randseed with some virtually guaranteed unique value solves the problem.


Maybe you use a global variable and just add one for each randseed call. After all 
the only thing that matters for the randseed, is that it is different.


BTW, I never would have guessed that the random number generator would have used 
threadvars. I would have thought, that on app start you would set one randseed and 
then call random from all threads.


Vincent.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Better random numbers ?

2006-03-03 Thread Jonas Maebe


On 3 mrt 2006, at 13:42, Vinzent Hoefler wrote:


BTW, I never would have guessed that the random number generator
would have used threadvars. I would have thought, that on app start
you would set one randseed and then call random from all threads.


Considering that the state array for the Mersenne Twister is an
unprotected global variable, calling random from different threads
looks like a bad idea to me.

I mean, it surely gives you sort of random values, but ...


That's why its state (and indeed not just randseed) should be  
threadvars.



Jonas
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Better random numbers ?

2006-03-03 Thread Vincent Snijders

Jonas Maebe wrote:


On 3 mrt 2006, at 13:42, Vinzent Hoefler wrote:


BTW, I never would have guessed that the random number generator
would have used threadvars. I would have thought, that on app start
you would set one randseed and then call random from all threads.



Considering that the state array for the Mersenne Twister is an
unprotected global variable, calling random from different threads
looks like a bad idea to me.

I mean, it surely gives you sort of random values, but ...



That's why its state (and indeed not just randseed) should be  threadvars.


Or use some locking mechanism. That would be slower, but would safe some 
memory.


Vincent
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Better random numbers ?

2006-03-03 Thread Vinzent Hoefler
On Friday 03 March 2006 12:55, Vincent Snijders wrote:
 Jonas Maebe wrote:
  On 3 mrt 2006, at 13:42, Vinzent Hoefler wrote:
  BTW, I never would have guessed that the random number generator
  would have used threadvars. I would have thought, that on app
  start you would set one randseed and then call random from all
  threads.
 
  Considering that the state array for the Mersenne Twister is an
  unprotected global variable, calling random from different threads
  looks like a bad idea to me.
 
  I mean, it surely gives you sort of random values, but ...
 
  That's why its state (and indeed not just randseed) should be 
  threadvars.

 Or use some locking mechanism. That would be slower, but would safe
 some memory.

I'd suggest both. :)

Objectify the whole Mersenne Twister into a single class, so that each 
thread can have it's own PRNG if necessary and provide a single global, 
but locked instance of it for the System.Random subroutines.


Vinzent.

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


[fpc-pascal] LongStrings Question

2006-03-03 Thread Evandro Sestrem


Hi,

I'm using {$LONGSTRINGS ON} to use a string variable like ansistring.

In this example, if I uncomment the s1 variable I got Error: Constant
strings can't be longer than 255 chars, but if I uncomment the s2 variable
(formed by concatenation of strings) the project compiles perfectly.

program testLongString;

{$LONGSTRINGS ON}

var
  s1, s2: String;
begin
 // test strings with more than 255 characters
//  s1:= '1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1  end';

{
  s2:= '1 1 1 1 1 1 1
1 1 1 1 1 ' +
   '1 1 1 1 1 1 1
1 1 1 1 1 ' +
   '1 1 1 1 1 1 1
1 1 1 1 1 ' +
   '1 1 1  end';
}
end.

I need use the s1 variable way because I'm receiving in a string a value
read from a BD.

I also tried compile with -Mdelphi, but the error stills the same.

Thanks in advance,

Evandro Sestrem


--
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.1.375 / Virus Database: 268.1.1/273 - Release Date: 2/3/2006

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] LongStrings Question

2006-03-03 Thread Иван Шихалев
In this case, constant string is a character sequense between two
''. If you receive a string value in run-time, all must be OK.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


[fpc-pascal] Repository access via the HTTP protocol

2006-03-03 Thread Michael Van Canneyt


Hi,

I've let the Apache webserver listen on port 8080 as well.

This should hopefully fool proxy servers into believing it's not HTTP,
so they pass it through.

Could people that had previously problems with HTTP access to SVN
on the regular HTTP port, please try http access for SVN with this
port, and report on their success ?

Just add :8080 to the hostname in the anonymous SubVersion access
instructions, and you should be fine.

Michael.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Object pascal a Modern Language

2006-03-03 Thread Paul Davidson

Mild Pascal rant:

Thank you for considering Pascal.  Contrary to popular belief, Pascal 
is indeed a modern language.  Though developed some time ago it has 
evolved the to include most of the extensions seen in 'modern' 
languages.  It should be noted that modern is not synonymous with 
recently invented.


Pascal is fully OO.  Many would say the implementation of OO is better 
and more complete than C++.  Performance is on par with C and C++.  Any 
differences usually related to automatic and predictable garbage 
collection present in Pascal.  Accessing C libraries is also simple.


Coming from a long background in large scale application design and 
management, Pascal has other advantages.  The syntax is somewhat simple 
than C and Java.  As well, experience and studies have shown that the 
same skill and effort applied to a C and Pascal project usually results 
in about 50% less productions bugs in the Pascal code.


FPC specifically has more advantages.  First is the active (and 
somewhat rabid:) development community.  It is centered in Europe, 
where the 'language du jour' does not hold as much sway as it does in 
North America.  Also, there is a large collection of libraries, tools 
and utilities available.


FPC handles many different flavours of the language.  It is portable 
(as is Lazarus) over many operating systems and processor types.  It is 
far more portable than Java and .Net (for different reasons)!


A thought-out design of your application can be as fast and portable as 
you wish.


Thank you for considering FPC and good luck with your project.

/RANT

On Mar 3, 2006, at 12:01, Matt Henley wrote:


I belong to a mailing list for a defunt open source chemical process
simulator (Sim42).  Members of the list are now showing interest in
restarting the effort.  It was originally written in python which
cause some speed issues.  Several of the list members (including me)
suggested freepascal and lazarus.  The gentleman spearheading the
effort sent the following and I would like to know what is the best
way to respond.  I do not know what features define a modern
language and would like to know what points to bring up.

My personal objective is not just to put out a simulator, but a fast
and efficient simulator.  Furthermore, personally, I do not consider a
program portable if it is written in a language which very few can
understand.  A modern language such as any of the .NET languages will
meet the efficiency objective but portability remains an issue.  While
I do have the Visual Studio .NET and I am happy with it, I understand
that not everybody has it and it is not cheap.  I looked at the
Lazarus project and (at least at a first glance) it is indeed very
Visual and will likely do the job.  It will however, limit us to
Pascal which is not really a modern language.  For those of you who
are in favor of using Lazarus, can you assure the rest of us that
Pascal has been modernized? 

Thanks for any help
Matt Henley
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal




P Davidson
Corax Networks Inc.
http://CoraxNetworks.com

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Object pascal a Modern Language

2006-03-03 Thread Mark Andrews

Matt Henley wrote:


understand.  A modern language such as any of the .NET languages will
meet the efficiency objective but portability remains an issue.  While

I believe the with .Net, you will have the same speed issues that you 
have with Python since it compiles to CLR and not native machine code. 
So he is mistaken in his initial premise. Java will have the same issue. 
Plus, when running a simulation, you don't want the program to suddenly 
decide it has to do garbage collection, thus slowing down. Any .Net or 
Java program will have these problems due to their very architecture.


What does he consider a modern language. You can't begin to quell his 
anxiety or disperse his ignorance until he can give you a definition. 
Ask for specifics.


Is he aware that Lazarus is written in Free Pascal? I would show him 
Pixel... it is very impressive.


Mark




___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Object pascal a Modern Language

2006-03-03 Thread Micha Nelissen
On Fri, 3 Mar 2006 18:28:40 +0100 (Romance Standard Time)
Michael Van Canneyt [EMAIL PROTECTED] wrote:

 Most people out there probably think of Pascal as still being in
 the state it was in when Niklaus Wirth first designed it.
 
 Object Pascal to date is fully OOP, and misses nothing that C#, C++
 or Java has: Interfaces, Exceptions, Classes: you name it, Object
 Pascal has it.

That's simply not true. C++ has multiple inheritance, templates, classes
in shared libraries; all things which FPC does not have. FPC does have
metaclasstypes (and virtual constructors) in the OO area, which C++ does
not have.

I do consider FPC to be a modern language, FYI ;-).

Micha
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Object pascal a Modern Language

2006-03-03 Thread Michael Van Canneyt


On Fri, 3 Mar 2006, Micha Nelissen wrote:

 On Fri, 3 Mar 2006 18:28:40 +0100 (Romance Standard Time)
 Michael Van Canneyt [EMAIL PROTECTED] wrote:

  Most people out there probably think of Pascal as still being in
  the state it was in when Niklaus Wirth first designed it.
 
  Object Pascal to date is fully OOP, and misses nothing that C#, C++
  or Java has: Interfaces, Exceptions, Classes: you name it, Object
  Pascal has it.

 That's simply not true. C++ has multiple inheritance,

Solved by interfaces in a much cleaner way.

 templates,

Agreed, but absolutely not essential. It just saves typing.

 classes in shared libraries

So does FPC if you so desire ? The RTL can be compiled as a shared lib,
and that includes Classes...

Michael.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Object pascal a Modern Language

2006-03-03 Thread Rodrigo Palhano

multiple inheritance what for?
templates is a specific resource, but ok.
classes in shared libraries, delphi does have it.

On Fri, 03 Mar 2006 14:57:07 -0300, Micha Nelissen [EMAIL PROTECTED]  
wrote:



On Fri, 3 Mar 2006 18:28:40 +0100 (Romance Standard Time)
Michael Van Canneyt [EMAIL PROTECTED] wrote:


Most people out there probably think of Pascal as still being in
the state it was in when Niklaus Wirth first designed it.

Object Pascal to date is fully OOP, and misses nothing that C#, C++
or Java has: Interfaces, Exceptions, Classes: you name it, Object
Pascal has it.


That's simply not true. C++ has multiple inheritance, templates, classes
in shared libraries; all things which FPC does not have. FPC does have
metaclasstypes (and virtual constructors) in the OO area, which C++ does
not have.

I do consider FPC to be a modern language, FYI ;-).

Micha
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal





--
Rodrigo Palhano
-
Equipe SpeedCASE

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Object pascal a Modern Language

2006-03-03 Thread Micha Nelissen
On Fri, 3 Mar 2006 19:14:41 +0100 (Romance Standard Time)
Michael Van Canneyt [EMAIL PROTECTED] wrote:

  That's simply not true. C++ has multiple inheritance,
 
 Solved by interfaces in a much cleaner way.

That doesn't solve the same problem. MI is much more powerful, but also
much more complex, and easily abused so that code maintainability goes
*down* instead of up.

  templates,
 
 Agreed, but absolutely not essential. It just saves typing.

That's an opinion, not a fact ;-).
 
  classes in shared libraries
 
 So does FPC if you so desire ? The RTL can be compiled as a shared lib,
 and that includes Classes...

This is *very* recent stuff. Is it in 2.0.x yet? Does lazarus work properly
with a shared LCL library ?

Micha
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Object pascal a Modern Language

2006-03-03 Thread Michael Van Canneyt


On Fri, 3 Mar 2006, Micha Nelissen wrote:


   classes in shared libraries
 
  So does FPC if you so desire ? The RTL can be compiled as a shared lib,
  and that includes Classes...

 This is *very* recent stuff. Is it in 2.0.x yet? Does lazarus work properly
 with a shared LCL library ?

I'll stick to facts, and skip opinions, as you rightly point out...

This is not recent stuff, I did that back in 1998 already on
Linux (the machine called tflily) . Admittedly, it was manual
work using ppumove, but it worked perfectly.

What is new is that the compiler does all the work for you.

What is still missing, is Win32 support. A DLL is a different beast
than a shared lib on linux, because it's usually self-contained,
and because it can't export variables. Mainly, this is package stuff.

The new internal linker should make this possible...

Michael.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Object pascal a Modern Language

2006-03-03 Thread Rodrigo Palhano

but not losing the focus, Pascal is a very modern language.

On Fri, 03 Mar 2006 15:29:21 -0300, Micha Nelissen [EMAIL PROTECTED]  
wrote:



On Fri, 3 Mar 2006 19:14:41 +0100 (Romance Standard Time)
Michael Van Canneyt [EMAIL PROTECTED] wrote:


 That's simply not true. C++ has multiple inheritance,

Solved by interfaces in a much cleaner way.


That doesn't solve the same problem. MI is much more powerful, but also
much more complex, and easily abused so that code maintainability goes
*down* instead of up.


 templates,

Agreed, but absolutely not essential. It just saves typing.


That's an opinion, not a fact ;-).


 classes in shared libraries

So does FPC if you so desire ? The RTL can be compiled as a shared lib,
and that includes Classes...


This is *very* recent stuff. Is it in 2.0.x yet? Does lazarus work  
properly

with a shared LCL library ?

Micha
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal





--
Rodrigo Palhano
-
Equipe SpeedCASE

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Object pascal a Modern Language

2006-03-03 Thread Matt Henley
Thanks for all the replies, i will try to formulate an agrigate response.

On 3/3/06, Rodrigo Palhano [EMAIL PROTECTED] wrote:
 but not losing the focus, Pascal is a very modern language.

 On Fri, 03 Mar 2006 15:29:21 -0300, Micha Nelissen [EMAIL PROTECTED]
 wrote:

  On Fri, 3 Mar 2006 19:14:41 +0100 (Romance Standard Time)
  Michael Van Canneyt [EMAIL PROTECTED] wrote:
 
   That's simply not true. C++ has multiple inheritance,
 
  Solved by interfaces in a much cleaner way.
 
  That doesn't solve the same problem. MI is much more powerful, but also
  much more complex, and easily abused so that code maintainability goes
  *down* instead of up.
 
   templates,
 
  Agreed, but absolutely not essential. It just saves typing.
 
  That's an opinion, not a fact ;-).
 
   classes in shared libraries
 
  So does FPC if you so desire ? The RTL can be compiled as a shared lib,
  and that includes Classes...
 
  This is *very* recent stuff. Is it in 2.0.x yet? Does lazarus work
  properly
  with a shared LCL library ?
 
  Micha
  ___
  fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
  http://lists.freepascal.org/mailman/listinfo/fpc-pascal
 



 --
 Rodrigo Palhano
 -
 Equipe SpeedCASE

 ___
 fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
 http://lists.freepascal.org/mailman/listinfo/fpc-pascal

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Object pascal a Modern Language

2006-03-03 Thread Marco van de Voort
 On Fri, 3 Mar 2006 18:28:40 +0100 (Romance Standard Time)
 Michael Van Canneyt [EMAIL PROTECTED] wrote:
 
  Most people out there probably think of Pascal as still being in
  the state it was in when Niklaus Wirth first designed it.
  
  Object Pascal to date is fully OOP, and misses nothing that C#, C++
  or Java has: Interfaces, Exceptions, Classes: you name it, Object
  Pascal has it.
 
 classes in shared libraries;

Since when is this a language feature? It is a implementation feature.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


[fpc-pascal] Internal linker?

2006-03-03 Thread chromdildo
Hi,

What about the new internal linker ?
Is it already available in the development tree?
What has changed? Any documents to read?

Thanks and best regards.
chrom

 What is new is that the compiler does all the work for you.

 What is still missing, is Win32 support. A DLL is a different beast
 than a shared lib on linux, because it's usually self-contained,
 and because it can't export variables. Mainly, this is package stuff.

 The new internal linker should make this possible...

 Michael.
 ___
 fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
 http://lists.freepascal.org/mailman/listinfo/fpc-pascal

   

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Object pascal a Modern Language

2006-03-03 Thread Marco van de Voort
 My personal objective is not just to put out a simulator, but a fast
 and efficient simulator.  Furthermore, personally, I do not consider a
 program portable if it is written in a language which very few can
 understand.  A modern language such as any of the .NET languages will
 meet the efficiency objective but portability remains an issue.  While
 I do have the Visual Studio .NET and I am happy with it, I understand
 that not everybody has it and it is not cheap.  I looked at the
 Lazarus project and (at least at a first glance) it is indeed very
 Visual and will likely do the job.  It will however, limit us to
 Pascal which is not really a modern language.  For those of you who
 are in favor of using Lazarus, can you assure the rest of us that
 Pascal has been modernized? 

IMHO the fatal flaw in this reasoning is that this opinion simply
regurgitates some IT management blurb, and doesn't really tailor a choice of
language to your needs.

There are three different arguments that I would mention in your response:

1) While not nearly as bad as Python, there are potential performance issues
in using managed languages. This is not just raw calculating speed, but also
startup time, memory usage (not unimportant in scientific calculations with
large datasets!).
Worse, doing something about it often means doing speed dependant calculations
in a non managed language in a DLL. So you potentially force contributors to
learn a new language, and later have to partially back out again.

2) The only somewhat jusitifyable choice for modern programming languages
in the IT sector is hiring. One can debate if .NET and Java are new
generations, or just a glorified old hat, but the main point is that they
_are_ prolific.

However that is not a 100% simple situation:
- First availability must be seend relative to demand (C# programmers
are the only programmer on the US top 10 most wanted list, J2EE has been so
in recent years). A lot more supply, but also a lot more hiring.
- Also, these languages are mainly business (read DB apps) oriented, and much
less scientifically. Pascal has been a scientific language for years.
-  Are you going to be hiring anyway? Otherwise I would inventorise
first which suitable language is most common in your community and choose
that (Pascal, Java, C# or not). It would be stupid to e.g. offend your most
worthwhile potential contributors with a wrong language choice.

IOW, don't be fooled by a simplistic mantrum, but do the research what
language is most suitable, and what's available in your community.

(your actual question is pretty much unanswerable till you define modern)
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Object pascal a Modern Language

2006-03-03 Thread Mark Andrews

Tony Pelton wrote:


it is *everything* that Java is, but better.


i feel like the hobbyist programmer in me has been reborn AND ... i've
actually started to look out into the job market a little, with an eye
towards maybe trying to make a jump from being a Java J2EE web
application developer to making a jump to doing Pascal development for
a day job, if the right opportunity came along.

Yet another lost soul wanders out of the C-Language (C, C++, C#, Java, 
Python, et. al.)  forrest and into the fertile fields of Object Pascal.


You know, in all my years of using Pascal (starting with Turbo 3.01A in 
1986) and Object Pascal (starting with Turbo 5.5 in 1989), I have heard 
this story on more than one occasion. However, I have never heard a 
story describing the opposite, ie. a person going from Pascal to a 
C-Language and having the same epiphany. I've tried to make the 
transition myself on several occasions, but I always end up coming back 
to Pascal.


Congratulations!

Mark
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


[fpc-pascal] RE: Modern Language

2006-03-03 Thread G�khan

It seems to me some people thinks none of
language/compiler except coming from Microsoft can be
modern or safe ! I'll restrain myself from saying
more.


__
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Object pascal a Modern Language

2006-03-03 Thread Matt Henley
Please note that I am advocating Lazarus for the project.. I was
responding to the project leader's (defacto at this point) call for
pros and cons of each language.  I and one other gentleman suggested
FPC/Lazarus.  I posted here precisely because I do not know what
constitutes a modern language.  I am not a programmer, just a
chemical engineer who has done a lot of programming (mostly in
Fortran), but who switched to delphi - kylix - Lazarus for my own
projects.

This is a community project... no companies are currently involved. 
The project is a continuation of an existing codebase which was
written in python. Few of the people want to continue it in Python. 
Several want to use C#.  Two of us know and love Lazarus.

The application would involve calculations, database access, and a
graphical user interface (visio like diagramming interface)... for
reference you can look at
http://www.aspentech.com/industry_solutions/oilgas/product.cfm?IndustryID=23ProductID=274
(scroll down for screen shot)

Thanks for all the input

Matt


On 3/3/06, Marco van de Voort [EMAIL PROTECTED] wrote:
  My personal objective is not just to put out a simulator, but a fast
  and efficient simulator.  Furthermore, personally, I do not consider a
  program portable if it is written in a language which very few can
  understand.  A modern language such as any of the .NET languages will
  meet the efficiency objective but portability remains an issue.  While
  I do have the Visual Studio .NET and I am happy with it, I understand
  that not everybody has it and it is not cheap.  I looked at the
  Lazarus project and (at least at a first glance) it is indeed very
  Visual and will likely do the job.  It will however, limit us to
  Pascal which is not really a modern language.  For those of you who
  are in favor of using Lazarus, can you assure the rest of us that
  Pascal has been modernized? 

 IMHO the fatal flaw in this reasoning is that this opinion simply
 regurgitates some IT management blurb, and doesn't really tailor a choice of
 language to your needs.

 There are three different arguments that I would mention in your response:

 1) While not nearly as bad as Python, there are potential performance issues
 in using managed languages. This is not just raw calculating speed, but also
 startup time, memory usage (not unimportant in scientific calculations with
 large datasets!).
 Worse, doing something about it often means doing speed dependant calculations
 in a non managed language in a DLL. So you potentially force contributors to
 learn a new language, and later have to partially back out again.

 2) The only somewhat jusitifyable choice for modern programming languages
 in the IT sector is hiring. One can debate if .NET and Java are new
 generations, or just a glorified old hat, but the main point is that they
 _are_ prolific.

 However that is not a 100% simple situation:
 - First availability must be seend relative to demand (C# programmers
 are the only programmer on the US top 10 most wanted list, J2EE has been so
 in recent years). A lot more supply, but also a lot more hiring.
 - Also, these languages are mainly business (read DB apps) oriented, and much
 less scientifically. Pascal has been a scientific language for years.
 -  Are you going to be hiring anyway? Otherwise I would inventorise
 first which suitable language is most common in your community and choose
 that (Pascal, Java, C# or not). It would be stupid to e.g. offend your most
 worthwhile potential contributors with a wrong language choice.

 IOW, don't be fooled by a simplistic mantrum, but do the research what
 language is most suitable, and what's available in your community.

 (your actual question is pretty much unanswerable till you define modern)
 ___
 fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
 http://lists.freepascal.org/mailman/listinfo/fpc-pascal

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Object pascal a Modern Language

2006-03-03 Thread Felipe Monteiro de Carvalho
On 3/3/06, Matt Henley [EMAIL PROTECTED] wrote:
 Several want to use C#.  Two of us know and love Lazarus.

On Open Source projects the Developer is King. Talking doesn´t matter
much, what really matters is the code that is written.

If they don´t agree on making it a Lazarus software, ask them to have
2 versions. a C# for windows and a Lazarus one for cross-platform.
Talk to them about targets that c# does not reach, like *BSD, Mac OS
X, Sparc, etc =)

Then work very hard on the Lazarus version.

They will soon drop the c# version if favor of the Lazarus one =)

--
Felipe Monteiro de Carvalho
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Object pascal a Modern Language

2006-03-03 Thread Marco van de Voort
 Please note that I am advocating Lazarus for the project.. I was
 responding to the project leader's (defacto at this point) call for
 pros and cons of each language.  I and one other gentleman suggested
 FPC/Lazarus.  I posted here precisely because I do not know what
 constitutes a modern language.  I am not a programmer, just a
 chemical engineer who has done a lot of programming (mostly in
 Fortran), but who switched to delphi - kylix - Lazarus for my own
 projects.
 This is a community project... no companies are currently involved. 
 The project is a continuation of an existing codebase which was
 written in python. Few of the people want to continue it in Python. 
 Several want to use C#.  Two of us know and love Lazarus.

This is exactly like I expected. Still the end conclusion stands. Go with
the language of the (group of) people you expect to contribute most. 

Also be wary of people (in the community) suggesting languages they do not
daily use.
 
 The application would involve calculations, database access, and a
 graphical user interface (visio like diagramming interface)... for
 reference you can look at
 http://www.aspentech.com/industry_solutions/oilgas/product.cfm?IndustryID=23ProductID=274
 (scroll down for screen shot)

Ah, Aspen. Yeah, used that during my studies, though not oil and gas. If
you need help with from FPC from time to time, just drop me a note. Would be fun
to do something with chemical engineering again. (did it for 3 years before
I switched to IT)  

I also have some experience with numeric calculating in pascal, and
inherited a pascal lib of relevant numerical routines from my Uni, so be
sure to also run numerical math problems over this list. (it's in
packages/extra/numlib, but unfortunately the docs are still untranslated in
Dutch. I can pick out specific routines and translate/document them if you
need them)

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] freereport and tiOPF

2006-03-03 Thread Graeme Geldenhuys
What platform are you developing under?  I have only tested tiOPF
under Windows and Linux.

Regards,
  - Graeme -



On 2/27/06, Bisma Jayadi [EMAIL PROTECTED] wrote:
 A very excellent news indeed! :D I'm very exciting to know that tiOPF has been
 run and compiled using FPC. I'll take a look at it soon. I think this also 
 would
 be nice if mention on FPC/Lazarus wiki (contribution section?).

 Thank you for the great work. I believe the FPC community will really 
 appreciate
 this. :)

 -Bee-

 has Bee.ography at
 http://beeography.blogsome.com
 ___
 fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
 http://lists.freepascal.org/mailman/listinfo/fpc-pascal

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


[fpc-pascal] Installation of Lazarus

2006-03-03 Thread J.L. Blom
A small question:
The latest version of Lazarus I can find is 0.9.12-0. It requests the
use of fpc-2.0.2-0.
However, the latest fpc - which I have downloaded - is 2.0.2-3.
Therefore Lazarus complains. Do I have to install the older version of
fpc? (which means forcing rpm to install the older version) or is there
an updated Lazarus or can I trick Lazarus to use the newer version?
Thanks in advance.
Joep


___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Internal linker?

2006-03-03 Thread Michael Van Canneyt


On Fri, 3 Mar 2006, chromdildo wrote:

 Hi,

 What about the new internal linker ?
 Is it already available in the development tree?

It is available in the 'linker' branch in SVN.

 What has changed? Any documents to read?

No documents that I know of.
The current status is that the compiler can now
work without any external tools: both assembler
and linker are internal in the compiler for at
least windows.

'make cycle' runs, cross-compilation and linking
works, the compiler produces a lazarus binary
which is functional AFAIK.

I have not seen any timings yet, but I have
seen reports that memory usage has been
greatly reduced.

Peter Vreman has done most, if not all, development
on this. He can say more about it than I can.

Michael.



 Thanks and best regards.
 chrom

  What is new is that the compiler does all the work for you.
 
  What is still missing, is Win32 support. A DLL is a different beast
  than a shared lib on linux, because it's usually self-contained,
  and because it can't export variables. Mainly, this is package stuff.
 
  The new internal linker should make this possible...
 
  Michael.
  ___
  fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
  http://lists.freepascal.org/mailman/listinfo/fpc-pascal
 
 

 ___
 fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
 http://lists.freepascal.org/mailman/listinfo/fpc-pascal

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] Object pascal a Modern Language

2006-03-03 Thread Michael Van Canneyt


On Fri, 3 Mar 2006, Matt Henley wrote:

 I belong to a mailing list for a defunt open source chemical process
 simulator (Sim42).  Members of the list are now showing interest in
 restarting the effort.  It was originally written in python which
 cause some speed issues.  Several of the list members (including me)
 suggested freepascal and lazarus.  The gentleman spearheading the
 effort sent the following and I would like to know what is the best
 way to respond.  I do not know what features define a modern
 language and would like to know what points to bring up.

 My personal objective is not just to put out a simulator, but a fast
 and efficient simulator.  Furthermore, personally, I do not consider a
 program portable if it is written in a language which very few can
 understand.  A modern language such as any of the .NET languages will
 meet the efficiency objective but portability remains an issue.  While
 I do have the Visual Studio .NET and I am happy with it, I understand
 that not everybody has it and it is not cheap.  I looked at the
 Lazarus project and (at least at a first glance) it is indeed very
 Visual and will likely do the job.  It will however, limit us to
 Pascal which is not really a modern language.  For those of you who
 are in favor of using Lazarus, can you assure the rest of us that
 Pascal has been modernized? 

Most people out there probably think of Pascal as still being in
the state it was in when Niklaus Wirth first designed it.

Object Pascal to date is fully OOP, and misses nothing that C#, C++
or Java has: Interfaces, Exceptions, Classes: you name it, Object
Pascal has it.

Michael.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal