5 My missing collections needs an empty map.
9 If I use `Reference` and `ReferenceQueue` for object registration, then I can
10 have it where objects which exist in the virtual machine may be garbage
11 collected by the host virtual machine. So if a virtual object does get
12 garbage collected on the host virtual machine then it should be gone in the
13 target virtual machine. This saves implementing a garbage collector in the
14 interpreter. I can also do the same with loaded classes. Classes which are no
15 longer referenced by any object would go away. However, I already do that, I
16 will just need a `ReferenceQueue` to know when classes go away.
20 Going to need a bunch of wrapped exceptions so to speak.
24 I need a slight refactor. I should have the loaded class code and the class
25 initialization and finder stuff in its own class. I have `JVMClassPath` but
26 perhaps it should become `JVMClassPathElement`. Then the `JVMClassPath` will
27 manage loaded classes and will be able to handle arrays and such. This way, all
28 classes are handled by the class path stuff and the engine is free of class
29 initialization and such, sort of. I can extend the locks too, so that each
30 individual part has its own lock. This way when multiple threads run, only one
31 can use the classpath at a time, but if one is not even looking up classes they
32 do not have to wait around for it. I will also add an object mananger which
33 keeps the reference of objects which exist as stated earlier today. Instead of
34 having new instance in the class, I can instead have the object manager handle
35 creation of instances and stuff such as arrays. I should also perhaps when the
36 object is an array, instead of conditional object I can instead have a class
37 called `JVMArray`. This way `JVMObject` is not cluttered with the conditional
38 case of arrays. However, arrays would still be objects, just the array objects
39 will be wrapped. The only thing I do not like is the engine which has
40 everything in it, it would be best split off.