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


[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] 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


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=23&ProductID=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] 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 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=23&ProductID=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


[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 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


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


[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
> 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


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 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 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 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 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 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 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 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 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.



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 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


[fpc-pascal] Object pascal a "Modern Language"

2006-03-03 Thread Matt Henley
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


Re: [fpc-pascal] freereport and tiOPF

2006-03-03 Thread Bisma Jayadi
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] 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] 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] 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] 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


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 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 Vinzent Hoefler
On Monday 27 February 2006 08:41, Vincent Snijders 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 ...


Vinzent.

___
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 09:41, Vincent Snijders 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.


It doesn't currently.

I would have thought, that on app start you would set one randseed  
and then call random from all threads.


Every time you call random, the current randseed is read, some  
calculations are performed and a new value is stored in the randseed  
variable. So if two threads call random "at the same time", then both  
will use the same randseed value and thus return the same random  
value (in the -current- case that randseed is not a threadvar).



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

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] Polymorphism question

2006-03-03 Thread dhkblaszyk
I made a typo which I didn't notice, thanks for the replies.

> 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
>>
>> <>
>>
>> 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
>


___
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

<>

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


[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 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
 
<>
 
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 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

<>

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] 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


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] 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


[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