<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <font size="-1"><font face="Helvetica, Arial, sans-serif">Dear
        Chide,<br>
        <br>
        In order to test programs written in Java with Gast I use a
        slightly extended TCP interface from Clean. There is a TCP
        interface in distribution (or rather two of them). The messages
        are arbitrary data types that are encode en decode on the Clean
        side by some generic functions. On the Java side the user has to
        do some work on encoding decoding manually. This works fine for
        the rather simple messages used by Gast..<br>
        <br>
      </font></font><font size="-1"><font face="Helvetica, Arial,
        sans-serif">Maybe the JSON stuff works even better since there
        is a better interface on the Java side. On the Clean side there
        is also a generic interface, you can just derive the needed
        conversions. I have no experience with this JSON library (apart
        from using it in iTasks).<br>
      </font></font><br>
    <font size="-1"><font face="Helvetica, Arial, sans-serif">Dynamics
        would not be my choice since they contain unevaluated Clean
        expressions and (references to) Clean code. You would need too
        much machinery to handle this in any other language.<br>
        <br>
        Best, Pieter<br>
      </font></font><br>
    On 21/11/2011 3:02 PM, Bas Lijnse wrote:
    <blockquote cite="mid:4ECA5A05.60304@cs.ru.nl" type="cite">
      <meta content="text/html; charset=ISO-8859-1"
        http-equiv="Content-Type">
      The JSON libraries that Erik mentions are available from:<br>
      <a moz-do-not-send="true" class="moz-txt-link-freetext"
href="https://svn.cs.ru.nl/repos/clean-platform/trunk/src/libraries/OS-Independent/Text/">https://svn.cs.ru.nl/repos/clean-platform/trunk/src/libraries/OS-Independent/Text/</a><br>
      <br>
      I always use this when I want to do simple data exchange between
      Clean and another language (I may be biased as author/maintainer
      of the library though :) )<br>
      <br>
      Best,<br>
      Bas<br>
      <br>
      On 21-11-11 14:52, <a moz-do-not-send="true"
        class="moz-txt-link-abbreviated"
        href="mailto:zuurb078@planet.nl">zuurb078@planet.nl</a> wrote:
      <blockquote
cite="mid:CADF5EBE816E3442BA4BF7F7BB8978530787E02C@CPEXBE-EML19.kpnsp.local"
        type="cite">
        <meta http-equiv="Content-Type" content="text/html;
          charset=ISO-8859-1">
        <meta name="Generator" content="MS Exchange Server version
          6.5.7654.12">
        <title>RE: [clean-list] Dynamic typing for communication with
          non-cleanprograms</title>
        <!-- Converted from text/plain format -->
        <p><font size="2">And dump all the hard work on Java? Dynamics
            are a proprietary Clean format and likely more
            complex/liberal than you need. Maybe JSON is easier to use:
            probably available in your JAVA implementation already and
            under the hood JSON converters are already available in
            Clean iTasks.<br>
            <br>
            <br>
            -----Oorspronkelijk bericht-----<br>
            Van: <a moz-do-not-send="true"
              class="moz-txt-link-abbreviated"
              href="mailto:clean-list-bounces@science.ru.nl">clean-list-bounces@science.ru.nl</a>
            namens Groenouwe, C.<br>
            Verzonden: ma 21-11-2011 13:39<br>
            Aan: <a moz-do-not-send="true"
              class="moz-txt-link-abbreviated"
              href="mailto:pieter@cs.ru.nl">pieter@cs.ru.nl</a><br>
            CC: <a moz-do-not-send="true"
              class="moz-txt-link-abbreviated"
              href="mailto:clean-list@science.ru.nl">clean-list@science.ru.nl</a><br>
            Onderwerp: [clean-list] Dynamic typing for communication
            with non-cleanprograms<br>
            <br>
            Dear Pieter (and others),<br>
            <br>
            Then another question:<br>
            <br>
            If you want to send information from one programming
            language (e.g. Java) to Clean, a typical way to go would be
            the following. First define an intermediate representation
            (for example in XML, or your own format). Then write a
            generator on the sender's side (in this case in Java), which
            converts a Java value or object into a file in the
            intermediate representation. Finally, write a parser on the
            receiver's side (Clean) which parses file holding the
            intermediate representation into a Clean value (with a Clean
            type). This is a labourious process during which you have
            the feeling you are are doing a lot of unnecessary work. As
            if you are repackaging the same sandwich three times in a
            row, first in a Java structure, then in the intermediate
            structure, and then again in a Clean structure... Waste of
            time (and the environment...) ;-)<br>
            <br>
            However, I had an idea: is it possible to use Clean's
            dynamic types for this purpose? Instead of generating some
            arbitrary intermediate type on the sender's side,
            immediately generate a value that can be read by Clean's
            dynamic type system. This would cut your work in half: you
            don't have to write a parser on Clean's side any more.<br>
            <br>
            I don't have any experience using Clean's dynamic typing
            yet, therefore I decided to first ask whether it is a
            fruitful approach before exploring it. Thus, is this
            possible and is it a good idea? Of course, I'm also open to
            other suggestions.<br>
            <br>
            Thanks in advance,<br>
            <br>
            Chide<br>
            <br>
            <br>
            <br>
            <br>
          </font> </p>
        <br>
        <fieldset class="mimeAttachmentHeader"></fieldset>
        <br>
        <pre wrap="">_______________________________________________
clean-list mailing list
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:clean-list@science.ru.nl">clean-list@science.ru.nl</a>
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://mailman.science.ru.nl/mailman/listinfo/clean-list">http://mailman.science.ru.nl/mailman/listinfo/clean-list</a>
</pre>
      </blockquote>
      <br>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
clean-list mailing list
<a class="moz-txt-link-abbreviated" href="mailto:clean-list@science.ru.nl">clean-list@science.ru.nl</a>
<a class="moz-txt-link-freetext" href="http://mailman.science.ru.nl/mailman/listinfo/clean-list">http://mailman.science.ru.nl/mailman/listinfo/clean-list</a>
</pre>
    </blockquote>
  </body>
</html>