Great. I’m interested. Performancewise it may not be the best possibility, but for reusability it’s good. I wonder about the overhead of your abstraction.
Re: performance, my implementation is not performance optimized, but in my experience Java is very fast. According to this benchmark Java is only about 2x slower than pure C (also known as “portable assembly”).
Yeah, the benchmark game. But arithmetic coding and the implied bit twiddling isn’t exactly the strength of Java. On the other hand in this case the overhead of you in-sync de/encoding abstraction may be decisive.
Great. I’m interested. Performancewise it may not be the best possibility, but for reusability it’s good. I wonder about the overhead of your abstraction.
Thanks for the feedback!
Re: performance, my implementation is not performance optimized, but in my experience Java is very fast. According to this benchmark Java is only about 2x slower than pure C (also known as “portable assembly”).
Yeah, the benchmark game. But arithmetic coding and the implied bit twiddling isn’t exactly the strength of Java. On the other hand in this case the overhead of you in-sync de/encoding abstraction may be decisive.