5 One thing I will need to consider is garbage collection. I want a good and
6 simple garbage collector, but one which does not add complication and is not
7 slow. I also want to potentially avoid having safe zones for threads to park
8 when GC is happening. I want to avoid reference counting. I also want to
9 avoid scanning the stack and register values for objects.
13 The non-bootstrap JARs in the target should be in their own directory. This
14 would have far better results because I could potentially add third party
19 I do wonder how I will implement the `StreamProcessor` along with the
20 supporting the helper classes needed for inflating compressed data.
24 I will need a simple but efficient stream processor.
28 I suppose a direct approach will work. Basically the `StreamProcessor` reads
29 input bytes and stores them somewhere after they are processed. So the class
30 then will just purely be for reading. The output stream can just be mapped
35 Actually, from `StreamProcessor` and `StreamProcessorInputStream` I am going
36 to have the same code or just wrapped code. Read from some source and do stuff
41 Ok so I have been thinking, `StreamProcessor` is a bad idea. It will just
42 complicate things and right now only two classes will use it, for inflate and
43 deflate. Also in the most common cases, one will never `OutputStream` inflate
44 and `InputStream` deflate. So there is not much point in having these classes
45 at all. The stream processing is just over engineered and will just complicate
46 the implementation greatly.