Hmmm, there's:
loadfunc(...) for dynamic loading of a C wrapper function, and
load(...) for dynamic loading of an entire Unicon program, but
there's no way to dynamically load a Unicon procedure
(from the IPL, for example). Instead, one has to have
statically referenced the proper file in a link directive.
How about a:
loadProc(fname,pname)
that searches I/LPATH (whichever is the right one!)
for file fname.u and returns the procedure referenced
by pname from that file. So, for example:
int2bit := loadProc("bitint","int2bit")
would work. (I assume loadProc() would have to
link in *all* of bitint.u [since pname could reference
who knows what], so subsequent calls for other
procedures defined in bitint.u would be faster.
There are several other variants that would be
equally useful (any one of them would be sufficient).
For example, could have:
(a) linkFile(fname)
dynamic equivalent of "link fname" directive; globals in
fname.u are made available as globals. (Have to define
behavior if that global already exists, though...)
(b) namespace := linkFile(fname) # my favorite
similar to (a), but returns a table of the globals in
fname.u, thus avoiding the namespace collision
problem. Also easier to dynamically 'unlink'...
I have a feeling that linkPackage(pName) would be
similarly useful.
--
Steve Wampler <[EMAIL PROTECTED]>
National Solar Observatory
-------------------------------------------------------
This SF.net email is sponsored by: ValueWeb:
Dedicated Hosting for just $79/mo with 500 GB of bandwidth!
No other company gives more support or power for your dedicated server
http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/
_______________________________________________
Unicon-group mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/unicon-group