FFI progress

Marcin 'Qrczak' Kowalczyk qrczak at knm.org.pl
Fri Apr 6 17:05:02 EDT 2001

Fri, 6 Apr 2001 09:04:32 -0700, Simon Peyton-Jones <simonpj at microsoft.com> pisze:

> It seems a bit odd to have static/dynamic *outside* but "new"
> inside the language-specific string.  I suppose the justification
> is that 'new' is really a static method with a funny way to call it.
> Whereas the 'self' parameter on a dynamic call is treated specially.
> So that's ok, but we should agree that's what we want.

Seems OK for me in the case of importing.

But what does foreign export mean in the context of Java or .NET?
Can whole classes be created? How does static/dynamic/new fit there?
In C functions are standalone, which is unlike Java.

In the C case there is no foreign name in dynamic imports and exports.
In Java there are: there is no distinguished function pointer type,
we are going to treat all classes as kind of function pointers with
multiple entry points. Looks ok?

I'm not familiar with Java's native methods. Can both static and
non-static methods be native? Can constructors be native? Shouldn't
foreign export dynamic generate a function which creates instances
of (an inner subclass of) some explicitly specified class?

 __("<  Marcin Kowalczyk * qrczak at knm.org.pl http://qrczak.ids.net.pl/
  ^^                      SYGNATURA ZASTÊPCZA

More information about the FFI mailing list