http://www.perlmonks.org?node_id=182565


in reply to Re: Huffman once again
in thread Huffman once again

My reply back:

Ok, here we go...

This is my second try at the huffman decompresser. I have changed the implementation a bit, replacing the arrays with strings. I've also applied some of the suggestions jynx made, inlineing the literals, using 'compliant' variable names ($; was a fine twist..).

#!/usr/bin/perl do{$_=ord substr"1234567 89:her;k<t=alcjusnop",$:*2+ (((ord(substr"\x00\x50\xA5\xd2\xc5\xbb\x96\xef\x06". "\xbc\x8e\xe0",$;/8,1)&2**(7-$;++%8))==0)?0:1),1;$:= ($_&240)==48?$_&15:-1+print chr}until$;==91