[lazarus] The use of FPC and Lazarus for simulation software

P. van der Velde p.vandervelde at raketnet.nl
Fri Sep 19 18:14:28 EDT 2003

Hello people

If all goes well I will be starting my PhD work in a few months. For my 
PhD research I will be designing and developing a platform for 
multi-physics simulations. This platform will consist of two main items. 
The first is a number of libraries with standard base objects from which 
new components can be derrived. The second is the actual application 
that can load components and then allow them to perform their task. The 
aplication can thus be seen as a platform for numerical simulations and 
the library sort of as a API. If all goes well the platform should 
become somewhat of a standard for numerical simulation software.

The main reason I am interested in FPC and Lazarus is that FPC allows 
one to write a single source file that can be compiled on many different 
systems (Windows, Linux etc.). This would be great for the application I 
am going to develop. I would want to use Lazarus as my code editor given 
that I am used to writing my source code in Delphi (and am thus 
extremely spoiled with silly things like a working IDE, code completion, 
object inspectors, simple GUI design etc. etc. ;-).

Now I had some questions with regards to the possibilities of FPC and 
Lazarus. If these are way off topic please let me know and I'll take my 
questions elsewhere.
First I would like to know if it is possible to do dynamic package 
loading in Lazarus and FPC. I know static package loading is possible 
(loading a package at compile time). However I really want to do dynamic 
loading for my project. As far as I know this is not (yet) possible in 
FPC or am I wrong here? If it is not available any idea on how long it 
will take before it will be available or if it will be available at all?

Another question is with regards to Synchronisation objects. I will be 
using multi-threading quite heavily and as a concequence I will need 
some Sync Objects. I notices that there are a few of them in the FP 
library but I'm kinda missing the MREWS 
(MultipleReadExclusiveWriteSynchroniser). Chances are that I will need 
it because the user interface and some other objects only need to read 
the data while there will probably only be one data generator. Therefore 
it should be more efficient to use a MREWS but as far as I know that is 
not present in the FP lib, or is it?

The third question is with regards to the current functionallity of 
Lazarus. How well does Lazarus actually work on Windows machines at this 
moment. I have tried to find a download but can't find one. I also tried 
to download the latest snapshot but I can't seem to get the CVS working 
on my machine (probably due to the fact that I'm doing something really 
stupid because I followed the instructions on the Lazarus website but it 
is still not working). So if anybody has a simple download link for me I 
would be really thankfull. Is it already possible to just download an 
installable version or do I have to compile Lazarus after downloading?

Finally I would like to know if the the DUnit testing system 
(http://www.dunit.sourceforge.net) works with FPC and Lazarus? I have 
been using this system to test my classes for some time now I have found 
that it is one of the best testing systems. It has helped me remove 
loads of bugs from my source code.

Thanks for your help

Regards Petrik

More information about the Lazarus mailing list