Code Comments
Programming Forum and web based access to our favorite programming groups.Hi, I was reading about Object Oriented designing, patterns etc... and unfortunatly noticed that almost all desgning examples I found tackle real-world situations which are more about modelling objects like cats, dogs, humans, teachers, rectangles and sqaures, supply-chain etc... I wish to find a few examples about how OO designing principles and patterns (like strategy) fit into designing complex algorithms (and ofcourse the performance issues relating to it) PPM bieng something somewhat complicated and something which I fully understand (I think), I was wondering if I someone can point me to an OO implementation. All available code I know of is either in C (or C-style C++) which doesnt has much to offer when it comes undertanding OO. Sachin Garg [India] http://sachingarg.go.to http://www.geocities.com/schngrg
Post Follow-up to this message"Sachin Garg" <schngrg@gmail.com> wrote in message news:1096112040.698335.277130@k17g2000odb.googlegroups.com... > I wish to find a few examples about how OO designing principles and > patterns (like strategy) fit into designing complex algorithms (and > ofcourse the performance issues relating to it) > > PPM bieng something somewhat complicated and something which I fully > understand (I think), I was wondering if I someone can point me to an > OO implementation. PAQ6 uses an object oriented design. However it uses context model mixing, which gives better compression than PPM. However, like PPM, there is a logical separation of prediction and encoding, which is captured by the classes Predictor and Encoder. Prediction is broken into stages: a group of Models (with a common base class) followed by Mixers and SSE stages). Other classes are used for lower level data structures. http://cs.fit.edu/~mmahoney/compression/#paq6 Newer versions such as PAQAR4 give better compression (the best on several benchmarks), but the documentation hasn't kept up with the code very well, and some non OO code was added (global variables, assembler). The main difference with the PAQAR design is that each Mixer has its own SSE stage, whose results are then averaged. I don't believe that OO design hurts performance if done right, although PAQ does make some concessions to execution speed by avoiding exceptions and run time resolution of virtual functions. -- Matt Mahoney
Post Follow-up to this messageUnfortunatly, It seems that the servers to that link are down, you would probably want to check with the servers. I could find the google cache of page but google doesnt caches the .CPPs Do you have a mirror? Or can you mail me the code? Sachin Garg [India] http://sachingarg.go.to http://www.geocities.com/schngrg
Post Follow-up to this message"Sachin Garg" <schngrg@gmail.com> wrote in message news:<1096260048.233850.217380@h37g2000o da.googlegroups.com>... > Unfortunatly, It seems that the servers to that link are > down, you would probably want to check with the servers. > > I could find the google cache of page but google doesnt > caches the .CPPs > > Do you have a mirror? Or can you mail me the code? > > Sachin Garg [India] > http://sachingarg.go.to > http://www.geocities.com/schngrg The site is back up. http://www.cs.fit.edu/~mmahoney/compression/ Florida Tech was shut down for hurricane Jeanne without electricity or Internet(second hurricane this month). -- Matt Mahoney
Post Follow-up to this message
Show a Printable Version
Email This Page to Someone!
Receive updates to this thread
Powered by vBulletin
Copyright 2000-2006 Jelsoft Enterprises Limited.