I agree that improving our C-calling capability would improve Unicon's usefulness. loadfunc() is great, but a thread in this list awhile back suggested some obvious next steps. A short summary would be: make it easy to call regular C library functions without writing an Icon-to-C stub function which translates Icon descriptors to C values, by providing a generic Icon-to-C mechanism. This would be very hard to do in full generality, but quite feasible for a good proportion of C functions with simple interfaces. Improving C calling has been on the Help Wanted list for some time. I would welcome a contribution in this area from a volunteer in our community.
So would I. I have written some code for my own use that allows translating simple Icon lists to C arrays and back, but it requires writing stubs. I'll see if I can retrieve the thread you mention in the mailing list.
Another opinion, with respect to the recent discussion on adding threads, is to consider the (easier?) alternative of adding support for PVM to Unicon.
PVM was popular in the early 1990's, but seems to have lost market share to MPI since then.
Yes, I agree. Markets are fickle -:) However, as far as I know, PVM is a higher-level interface than MPI, and quite a bit easier to use. I consider that a big plus. Also, while not as interesting a project from the research point of view, it seems to me that PVM support would be just about as useful as adding threads to Unicon.
For some distributed applications a PVM or MPI interface would be useful, but those tend to be the same applications where performance dictates the use of a lower level language. Someone would need to reinvest in the compiler and/or virtual machine and make Unicon much faster before it would be very interesting as a parallel programming language.
Two points. First, if you can parallelize an application with PVM, you ideally gain a speedup proportional to the number of processors. That, in itself, is a big gain, no matter if your programming language is "fast" or "slow". Second, I was envisioning PVM support in conjunction with a C interface. So if you wrote performance-critical code in C, you could gain even more by parallelizing the C.
I guess a good interface to C would go a long way toward interfacing with PVM also, or with MPI, for that matter.
Kostas
------------------------------------------------------- SF.Net is sponsored by: Speed Start Your Linux Apps Now. Build and deploy apps & Web services for Linux with a free DVD software kit from IBM. Click Now! http://ads.osdn.com/?ad_id56&alloc_id438&op=click _______________________________________________ Unicon-group mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/unicon-group
