The JOS project should be closer to integration. What is integration? It is
the point when the jJOS, decaf, jCurses, JEPS, BCNI, and standard class
libraries come together to run a command line shell. These components must
be integrated so that I can sit down at my JOS machine and run whatever
character-based Java program I want.

I think decafJVM::internBuiltInMethod() is a better mechanism than JNI.
This method eliminates an awkward naming convention. The
internBuiltInMethod() binds a bytecode method to its machine code.

void decafJVM::internBuiltInMethod(
    builtInMethod fcnp,
    char *classname,
    char *fcnname);

It should be possible to create a corresponding
decafJVM::internOpcodeMethod(), which binds an opcode to its machine code.

-----

Discussion: What kind of programs need to be written to demonstrate the JOS
machine?

Many character-based programs are already available in the Smart API. While
an AWT-compatible component is often used to display the output from
character-based programs on my computer, a character-based program works
from a simpler non-bitmapped VGA mode.

With the Alternative Packages sub-project, I have created three classes:

TestException
TestProgram, and
TestSuite

A TestException is thrown whenever a test has failed. An optional message
contains the reason why the test failed.

A TestProgram is an implementation of ConsoleProgram and uses a
ProgramContext. Parameters can be passed to a TestProgram from a command line.

A TestSuite is an extension of TestProgram. TestSuite is given a list of
class names (TestPrograms) to run in batch.

By writing test programs, we can run and re-run individual tests as needed
from a command line. We can get a feel for how much of JOS is finished, how
much needs more work.


_______________________________________________
Kernel maillist  -  [EMAIL PROTECTED]
http://jos.org/mailman/listinfo/kernel

Reply via email to