[clean-list] Dynamic typing for communication with non-cleanprograms

Groenouwe, C. c.groenouwe at vu.nl
Wed Nov 30 16:04:40 MET 2011


Dear Bas and Erik,

Thanks for your good tips, I'll keep them in mind. However, I
don't know to what extent it applies to my current situation. My
first post was perhaps a bit misleading in that I have defined some
types which beautifully fit in algebraic data types. I.e. I'd rather
express the problem in the Clean type than in an OO structure (btw, the
other language I use is not java, it was just an hypothetical example).
I guess JSON is not expressive enough to deal with ADTs, or is it?

________________________________
Van: clean-list-bounces at science.ru.nl [clean-list-bounces at science.ru.nl] namens Bas Lijnse [b.lijnse at cs.ru.nl]
Verzonden: maandag 21 november 2011 15:02
Aan: clean-list at science.ru.nl
Onderwerp: Re: [clean-list] Dynamic typing for communication with non-cleanprograms

The JSON libraries that Erik mentions are available from:
https://svn.cs.ru.nl/repos/clean-platform/trunk/src/libraries/OS-Independent/Text/

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 :) )

Best,
Bas

On 21-11-11 14:52, zuurb078 at planet.nl<mailto:zuurb078 at planet.nl> wrote:

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.


-----Oorspronkelijk bericht-----
Van: clean-list-bounces at science.ru.nl<mailto:clean-list-bounces at science.ru.nl> namens Groenouwe, C.
Verzonden: ma 21-11-2011 13:39
Aan: pieter at cs.ru.nl<mailto:pieter at cs.ru.nl>
CC: clean-list at science.ru.nl<mailto:clean-list at science.ru.nl>
Onderwerp: [clean-list] Dynamic typing for communication with non-cleanprograms

Dear Pieter (and others),

Then another question:

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...) ;-)

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.

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.

Thanks in advance,

Chide







_______________________________________________
clean-list mailing list
clean-list at science.ru.nl<mailto:clean-list at science.ru.nl>
http://mailman.science.ru.nl/mailman/listinfo/clean-list


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.science.ru.nl/pipermail/clean-list/attachments/20111130/1a4b9324/attachment.html>


More information about the clean-list mailing list