<div>
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:
</div><div><br></div><div>-record(foo, {</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>ratio :: {integer(), integer()},</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>%% other stuff here</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>}).</div>
<div><div><br></div><div>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?</div><div><br></div><div>Cheers,</div><div><br></div><div>Steve</div><div><br></div><div>-- </div><div>Steve Strong</div><div>Sent with <a href="http://www.sparrowmailapp.com/?sig">Sparrow</a></div><div><br></div></div>
<p style="color: #A0A0A8;">On Monday, 17 June 2013 at 07:01, Vincent Siliakus wrote:</p>
<blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;">
<span><div><div>Op zondag 16 juni 2013 23:48:21 UTC+2 schreef Richard A. O'Keefe het volgende:<blockquote type="cite"><div>
<br>There's another approach.
<br>
<br>Define your own "record" language,
<br>and generate the Erlang code (*including* -record declarations) from that.
<br>
</div></blockquote><div> </div><blockquote type="cite"><div>And if you go down that route, be sure to first checkout the Piqi project at : <br></div></blockquote><a href="http://piqi.org">http://piqi.org</a><br><br>-vincent<br><br><div> </div><br><div> </div><div> </div><div> </div><div> </div><div> </div><div> </div></div><div><div>_______________________________________________</div><div>erlang-questions mailing list</div><div><a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a></div><div><a href="http://erlang.org/mailman/listinfo/erlang-questions">http://erlang.org/mailman/listinfo/erlang-questions</a></div></div></div></span>
</blockquote>
<div>
<br>
</div>