State of the Isthmus
Maurizio Cimadamore
maurizio.cimadamore at oracle.com
Tue May 8 12:19:00 UTC 2018
Hi,
I've posted a new document here:
http://cr.openjdk.java.net/~mcimadamore/panama/panama-binder-v3.html
This document attempts to capture the state of the Java vs. native
interop in a single and centralized place, and is organized into 3
sections: there's a small intro which is used to outline the reference
architecture of our solution - e.g. a binder which take some native
bundles, consisting of interfaces + metadata and turns them into
concrete implementation, which can then be poked by user code wanting
access to native features.
Then there's a section covering layouts - first layout are presented as
a pseudo API, then a language syntax will also be discussed, so that we
will be able to associate layout description to interfaces using
annotations. This section is relatively language agnostic (as layouts
are language agnostic).
The last section is about the problem of mapping C types to Java
carriers; as such, we zoom into the problem of C interop. We outline
some principles which should govern this mapping, and then walk through
the various features of the C language, and try to find, for each of
these, the best way to model it in Java.
Even though the document bears my name, I'd like to point out that this
work is the result of countless discussions among the members of the
Panama team - I'd like to thank everybody who contributed to these
discussion, either directly or indirectly.
In the upcoming weeks, we will create a new branch in the Panama repo
(initially a child of the 'nicl' branch) and start working on the
branch, by implementing the concepts described in this document. This
document will also be updated to reflect significant changes in the
binder API - as such, I believe this document will be very useful for
anybody wanting to write a tool targeting the Panama infrastructure.
Cheers
Maurizio
More information about the panama-spec-experts
mailing list