Convert-Binary-C reviews

RSS | Module Info

Convert-Binary-C (0.76) *****

I tried to use this module on Solaris 11, Ubuntu 11 and MacOS 10.5.8.
Solaris 11 and Ubuntu 11: excellent, installs flawlessly. Familiarizing with the module is easy (thanks to the extensive documentation). This is one of the most breathtaking modules I have ever used. Access to C structures has never been easier.

My only caveat: it doesn't install on MacOs 10.5.8 at all. I have the same problem as reported by Gang Fang on my old Mac and I'm wondering that in all these years noone has picked this up.

When I look through the immense build log the first errors appear here:

Running make test
PERL_DL_NONLAZY=1 /usr/bin/perl "-Iblib/lib" "-Iblib/arch"
tests/001_init.t .......... ok
tests/101_basic.t ......... Failed 2/211 subtests
tests/201_config.t ........ ok
tests/202_misc.t .......... 1/207 # Test 206 got: "\0\0\0\0\xFF\xFF\xFF\xFF" (tests/202_misc.t at line 387)
# Expected: "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF"
# tests/202_misc.t line 387 is: ok($x, pack('C*', (255)x8));
# Test 207 got: "\xFF\xFF\xFF\xFF\0\0\0\0" (tests/202_misc.t at line 387 fail #2)
# Expected: "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF"
tests/202_misc.t .......... Failed 2/207 subtests
and so it continues.

Hasn't anyone ever tried to get this going on Macs?

Such an excellent module deserves to run everywhere.

Convert-Binary-C (0.74) *****

Clearly one of the most amazing packages I've seen so far.

When you need to encode/decode structures (read: "messages") which are defined on C level, then this is *the* package to go. It's fast, easy to use, has excellent documentation - and on top, Marcus was always quick to provide very helpful insight with some open questions.

In my case, writing a message tracer/sender for an embedded application couldn't have been easier. Thanks a lot Marcus!

Convert-Binary-C (0.58) *****

I'm just chiming in to agree with Tassilo's review. This is a great module.

Convert-Binary-C (0.45) *****

The only shortcoming of this module is probably it's confusing name which may people distract from what it does.
Feed it C code (of any complexity, it has its own yacc grammar), request a particular structure from it and pack or unpack data according to the struct. That's what the module does.

That way, reading a wav header into a hash for instance becomes a one-liner if you have the C struct. If you already have C code, this module is much more powerful than Perl's built-in pack() and unpack(). It's also faster and very configurable.
1 hidden unhelpful review