comp.lang.ada
 help / color / mirror / Atom feed
From: Poul-Erik Andreasen <poulerik@pea.dk>
Subject: Re: Dynamic functions
Date: Fri, 10 Aug 2007 16:59:45 +0200
Date: 2007-08-10T16:59:45+02:00	[thread overview]
Message-ID: <46bc7afa$0$172$edfadb0f@dread11.news.tele.dk> (raw)
In-Reply-To: <6sdjo0lxt0xs.1ep1p45e58zk2$.dlg@40tude.net>

Dmitry A. Kazakov wrote:
> On Fri, 10 Aug 2007 08:54:57 +0200, in comp.lang.ada you wrote:
> 
>> Poul-Erik Andreasen wrote:
>>
>>> How is the best way to make a representation of a function/algorithm
>>> wich can bee setup at runtime in Ada.
>> Is there any reason that you cannot convert the function to Ada, write
>> it to a file, compile it to a plug-in/DLL/shared library, and then
>> load the plug-in/DLL/shared library?
> 
> Yup, this is how MatLab and many other similar languages do, if you really
> need to *program* (as opposed to draw (:-))  something...
>  
>> The complication is that it requires an Ada compiler on the running
>> system, but the benefit is pretty fast execution.
> 
> ?
> 
> Execution includes elaboration of the code. In your case elaboration would
> mean to call the compiler, to link the DLL, to load the DLL. How frequent
> the given function F will be called per run? If you are not going to design
> some image rendering/processing system with millions of calls per function,
> it probably will not pay off.

In my case wee are in fact talking about  several million calls per 
function. Jacob have bee proposing this model to me before, but i find i 
a bit to cumbersome. By the way it is not images it is timeseries

> Other potential issues:
> 
> 1. You will need a lot of free system resources to be able to run the
> compiler/linker in parallel to your program, free memory and disk space.
> 
> 2. The response time (from request to execute F to its start) will be
> awful.
> 
> 3. You will need to manage files (lots of) and other environmental stuff.
> Deployment, integration etc might turn difficult.

This is my main issue
> 
> 4. DLL interface does not know Ada. Exporting complex data types and
> objects of from a dynamically loaded DLL could be difficult.
> 
> 5. DLL handling stuff is non-portable.
> 
This could also become an issue.



  reply	other threads:[~2007-08-10 14:59 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-08-09 16:06 Dynamic functions Poul-Erik Andreasen
2007-08-09 16:51 ` Georg Bauhaus
2007-08-09 18:20   ` Poul-Erik Andreasen
2007-08-09 17:58 ` Dmitry A. Kazakov
2007-08-09 18:17   ` Poul-Erik Andreasen
2007-08-10  7:28     ` Dmitry A. Kazakov
2007-08-10  6:54 ` Jacob Sparre Andersen
2007-08-10  7:51   ` Dmitry A. Kazakov
2007-08-10 14:59     ` Poul-Erik Andreasen [this message]
2007-08-10 18:56       ` Dmitry A. Kazakov
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox