Projects - Java
This page lists a number of the Java projects I've done. They include: You can also find several applets in the Web section:

The Analytical Engine Online

This is a "Computer Science 0" survey course, pairing a textbook with a web site. The web site elaborates on each chapter in the text, giving interactive demonstrations on a number of topics. I wrote three applets for the web site: The Logic Simulator, The Expression Parser, and The CPU Simulator.

The applets are all digitally signed to allow reading and writing local files (if the user consents). This works with both Internet Explorer and Netscape Communicator, although not on all platforms (some browser/platform combinations don't support digital signatures yet).

You can find the main page for The Analytical Engine Online at <>.

I'll describe each of the three applets below, along with their URLs. If you go to the URL you'll see each applet shown in a frame with a "Help" button at the upper-right; click the Help button to get a page of information on how to use the applet.

The Logic Simulator ("Logg-O")

This applet lets the student graphically build and simulate a digital circuit. The student drags digital gates onto their work surface, adds switches and lamps, wires it all together, and runs the simulation. The applet is fully interactive; dragging a gate drags all the wires attached to the gate, and while running the student can turn switches on and off while watching the results.

You can find this applet at <>.

The Expression Parser ("Rosetta")

This applet lets the user enter a mathematical expression and watch it be converted into computer assembly language. The user enters an expression of the form "x = <expression>" (e.g. "x = 2 * (y + 4 * (z/2))"). She can then watch the parser break the expression into tokens, build a parse tree showing the relationship between the tokens, and then decompose the parse tree generating assembly code that calculates the equation.

You can find this applet at <>.

The CPU Simulator

This applet lets the user enter computer assembly language and watch it control a simulated microprocessor. The simulator shows the instruction memory, the data memory, the instruction register, the instruction decoder and the ALU. The simulator uses animation to show data movement and processing.

You can find this applet at <>.

The Multimedia Browser

This is a Java-based demonstration of a multimedia browser, created for Houghton Mifflin in fulfillment of an ARPA/NSF grant. It was designed to give the user access to any of a number of types of media. Using JavaBeans and the Java Media Framework, the demo shows media selection via keyword dictionaries, and display of images and video clips. Additional media types can easily be added. Working for Six Red Marbles, I wrote the Java code for the browser.

CORBA-based communications applet

This applet was created for a browser-based client-server system. The applet maintained a copy of the user's state, communicating any changes to the server using CORBA. CORBA was used to provide communications efficiency, scalability and interface consistency. JavaScript was used to integrate the applet into the client's web page, making requests of the applet and displaying the results.



    Copyright © 2012 Daniel Griscom Site design  
Home Page Home Page Home Page