Giorgio Zoppi wrote:
...
It could become an useful runtime for
embedded components (i.e. in telco projects),
going beyond sca or soa platforms, if we provide a binary protocol for
comunications between parts (i.e some sort of rpc using asn.1 for
object serialization).
Sounds good...
I did a lot of ASN.1 in a previous life -- to the point of waking up in
the middle of the night with ASN.1 encoded nightmares :) so I'm not sure
I want to go back there myself right now on my Tuscany spare coding
time... But it'd certainly be interesting, so if you want to give it a
shot I can try to help.
I've looked around and asked some of my old telco-time pals what they'd
use for ASN.1 now. Here are a few options you could start with:
- ASN1C [1], nice and simple.
- The builtin support for ASN.1 in Erlang [2]. Looks pretty solid, no
surprise given Erlang's roots.
- The ASN.1 code in openssl [3]. I've not seen a compiler but I may have
missed it. The runtime seems incomplete, missing REAL and Embedded PDV
types, but they're not used a lot AFAIK.
There's probably more options. At this point I'd hesitate between [1]
and [2]. Integrating [1] seems really easy. [2] would require support
for Erlang component implementations similar to what Wojtek did with
Tuscany Java, but should be feasible and opens more perspectives.
It'd be fun to try this out with a real application of ASN.1 like H.323,
some CDR (call detail record) formats, or another useful module from the
ITU ASN.1 module database [4]...
[1] http://lionet.info/asn1c/
[2] http://www.erlang.org/doc/apps/asn1/index.html
[3] http://www.openssl.org/
[4] http://www.itu.int/ITU-T/recommendations/fl.aspx?lang=1
Hope this helps
--
Jean-Sebastien