Re: translating one objcaps language to another?

"Mark Miller" <[email protected]>
Newsgroups gmane.comp.lang.e.general
Message-ID <[email protected]>
On Jan 22, 2008 12:18 PM, Lex Spoon <[email protected]> wrote:
> Does anyone know of a compiler that goes from one object capabilities
> language to another?

A first step is to decide on a mapping of basic Java (or Joe-E) types
to basic JavaScript (or Caja) types. Leaving security aside for the
moment, we already have at least four(!!) mappings between these two
languages:

* GWT provides a JS Native API, allowing Java code translated to
JavaScript to directly call JavaScript objects.
* Rhino allows JavaScript code to call Java objects.
* The browsers provide LiveConnect
<http://en.wikipedia.org/wiki/LiveConnect>, enabling JavaScript on a
web page to talk to Java applets on that page.
* Waterken's provides both a Java and a JavaScript ref_send API,
mapping each language onto Waterken's JSON/HTTPS-based protocol.
* Once Microsoft's CLR (.net virtual machine) supports JavaScript,
then this will create a mapping between JavaScript and J#.

I have never heard anyone comment on the compatibility between even
any two of these mappings. Can someone please comment on their
similarities and differences.

>  If you were working with such a tool, what you
> would want is to be able to reason in either the source language or
> the target language and not go wrong.  I would like to better
> understand what exactly this level-shifting means.
>
> It looks tempting to say you want object graphs in the source
> language to map to object graphs in the target language.  If the
> source language has a reference from SA to SB, then you want the
> target language to have a reference from TA to TB where TA and TB are
> the objects corresponding to SA and SB.  Given this property, it
> would seem like you could shift your reasoning between the
> compilation levels pretty safely.
>
> I am not sure, though.  What do you guys think?


I think this property is desirable but not adequate by itself.
<http://lambda-the-ultimate.org/node/1588> would seem to be relevant.


-- 
Text by me above is hereby placed in the public domain

    Cheers,
    --MarkM
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.