2016/03/15

11:45

At least with the lack of invokedynamic support I do not have to worry about
handling it. However, it is possible that a newer version of JavaME might
support invokedynamic (since lambdas are useful and Java ME 8 is essentially
7). Therefor, I should take this into consideration.

15:57

Implementing it without actually needing it could end up being a waste
however. So I will consider having room for it to be supported in the future
but not actually implement it. However, not considering it at all would be
simpler. On another note, I could support virtual environments such as
Java and WebAssembly. So basically SquirrelJME could run on older Java VMs
or in web browsers. Having it run on web browser would make demoing a bit
easier without requiring users to download it, although local filesystem
access and such would not be available. If I were to write a web browser for
Java ME, I would likely only support WebAssembly since Javascript is a giant
mess. A third-party Javascript library could be used instead to support that.

17:16

Constants would be best in their own class.

18:29

Since Java ME lacks EnumMap, I am going to have to roll my own.

18:31

However since I cannot reflect enumeration values, I essentially will just have
to pass a list of entries. However that will require either a shared global or
copes of much data. So I just need a kind of bitsit where I can check ordinals
on, or just use a integer field then just have a manual flag bit check in
there.

18:35

I should probably shorten all of the interpreter stuff to instead be for
example JVM. That would be more compact and I would not need to type
Interpreter. It would also likely look nicer too.

18:49

I do wonder though if the interpreted environment should match the one that
would be compiled. That is, have an actual memory space as I would for a normal
virtual machine compilation and actually use pointers to modify objects and
such. That would make the compilation part a bit easier becuase I could use the
native magic stuff for that. However, the magical stuff would be a bit
abstracted so VM wise there would not be direct memory access from any of the
core classes (at least there should not be any).