Version française
Home     About     Download     Resources     Contact us    
Browse thread
Long-term storage of values
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Martin Jambon <martin.jambon@e...>
Subject: Re: [Caml-list] Long-term storage of values
On Fri, 21 Mar 2008, Martin Jambon wrote:

> On Fri, 21 Mar 2008, Dario Teixeira wrote:
>
>> >  No JSON needs to be written by hand.
>> >  Here's a simple example:
>> > 
>> >  type json point = { x : int; y : int }  (* an OCaml record *)
>> > 
>> >  It creates the functions with the following signature:
>> > 
>> >  val json_of_point : point -> Json_type.t
>> >  val point_of_json : Json_type.t -> point
>>
>>  Hi,
>>
>>  And thanks for the clarification, Martin.  Okay then, this makes
>>  json-static as convenient as Sexplib, and the strongest candidate
>>  if human-readability is a requirement.  It should also come in
>>  very handy for browser/server communication (AJAX) using the
>>  Ocsigen platform, for example.
>
> I have to say that json-static does not support parametrized types other than 
> a few pervasive ones (lists, arrays, hash tables, options, ...).
>
>
> Like the other syntax extensions that deal with types it uses the type names 
> to determine the JSON type to use, i.e. if 2 names are used to refer to the 
> same OCaml type, they can use 2 different JSON representations.
> A common, predefined example is the "assoc" type, which is defined as 
> follows:
>
> type 'a assoc = (string * 'a) assoc

erratum:

type 'a assoc = (string * 'a) list

> and would use a JSON object rather than a JSON array of arrays, which is
> common usage.
>
>
> Martin
> --
> http: //wink.com/profile/mjambon
> http: //martin.jambon.free.fr