You can 'allocate' and pass pointers as (longs?). The trick is to have the receiving program be able to recognize the structure - should be OK if structure definitions are stable and data-element sizes are the same.
Regarding the variable length information...
I know C/C++ will handle things like pointers to functions, etc..
FORTRAN90/95 can handle pointers, or at least you can allocate arrays
INTEGER(4) ,ALLOCATABLE :: POINTS(:)
INTEGER(4) MIN_POINT, MAX_POINT
! DETERMINE THE POINTS
ALLOCATE( POINTS( N_TREES ) )
POINTS(I) = TREES(I)%PLOT
! get the min and max points
MIN_POINT = MINVAL( POINTS )
MAX_POINT = MAXVAL( POINTS )
! allocation test
DEALLOCATE( POINTS )
and I'm pretty ure you can do it with user defined data types, but
I don't know how fortran can handle pointers as callback functions.
Does anyone know if this is possible? Can we define a function in fortran,
call it from a c shared lib that is called from VB? Is that asking too much?
I would say that we could support callbacks (or a void pointer in the data)
and as I'm not sure if fortran can typecase a pointer, maybe we should stay
away from it for now until someone can test it out.
another point we should address is the fact that there are no open-source compilers out there for fortran90/95. f77 compilers are out there and seem to work on both unix, gnu/linux, and win32. BUT I would like to see this project deal with the lowest common denom first to make sure we can do it.