[erlang-questions] Records / Proplists / JSON / BSON

Steve Strong <>
Mon Jun 17 10:29:44 CEST 2013


Thanks for the pointers to piqi, it looks close to what I was looking to build.  However, I've been playing a little and can't seem to express some of the constructs that we regularly use, for example we use tuples quite a lot for simple things such as ratios, so I may have a record such as: 

-record(foo, {
ratio :: {integer(), integer()},
%% other stuff here
}).

piqi certainly doesn't have support for these out of the box, but I'm also struggling to see how I can define one as an extension.  I'm trying to provide a mapping from an Erlang tuple to a piqi list; it wouldn't be perfect, since piqi doesn't know the list should be precisely 2 long, but it would be good enough.  I can get piqi to make calls to custom code where I can do the tuple <-> list mapping, but the generated .hrl file ends up with the primitive piqi type (so list(integer()) ) rather than my erlang type ({integer(), integer()}).   This would likely upset Dialyzer quite a lot ;) .  Any piqi gurus out there have any hints?

Cheers,

Steve

-- 
Steve Strong
Sent with Sparrow (http://www.sparrowmailapp.com/?sig)


On Monday, 17 June 2013 at 07:01, Vincent Siliakus wrote:

> Op zondag 16 juni 2013 23:48:21 UTC+2 schreef Richard A. O'Keefe het volgende:
> > 
> > There's another approach. 
> > 
> > Define your own "record" language, 
> > and generate the Erlang code (*including* -record declarations) from that. 
>  
> > And if you go down that route, be sure to first checkout the Piqi project at : 
> http://piqi.org
> 
> -vincent
> 
>  
>  
>  
>  
>  
>  
>  
> 
> _______________________________________________
> erlang-questions mailing list
>  (mailto:)
> http://erlang.org/mailman/listinfo/erlang-questions
> 
> 


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20130617/74e8762c/attachment.html>


More information about the erlang-questions mailing list