Help for the Teaching Machine.
Trouble shooting
Loading programs.
- Applet. The usual way of changing programs is to load the web page that describes
the program.
- Application. The menu commands Load C++ File and Load Java File may
be used.
Commands to specific subwindows.
Source Code Subwindow
Execute the
next expression in this subroutine.
Execute the next expression.
Execute to the
end of this subroutine.
Execute until
the line the cursor is on or until the program terminates.
Restart the
program.
Expression Engine Subwindow
Execute one
step.
Undo last
command..
Stack, Static, Heap, and Scratch Subwindows
Display one
line per variable..
Display one line per byte.
Display values
in hexadecimal.
Box & Arrow View Subwindow
Display stack
variables along left border.
Display static variables along the left border.
Window manipulation.
All subwindows can be moved, resized, or brought to the front, though it sometimes
takes a few tries to get the mouse in just the right spot.
All subwindows can be maximized, minimized, or closed. Once closed, they are gone until
a file is opened.
Exiting the teaching machine.
If you are running the Teaching Machine as an applet, do not try to exit it by clicking
on the x in the upper right corner.
- Internet Explorer. When you leave the web page that initiated the Teaching
Machine Applet, the applet will be terminated.
- Netscape Navigator. When the page that initiated the Teaching Machine Applet, is
no longer on Navigator's Forward-Backward stack, the applet will be terminated.
- Application. The usual Exit menu item, will terminate the application, as will
the x in the top right corner (in MS Windows).
Security restrictions.
If you ask the applet to do something that, because of a security restriction, it can
not do, a window will pop up to tell you so. Typically you may not exit (exiting would
shut down your web browser, which, while not a security problem, is annoying) nor load a
local file.
Unfortunately the Java slogan of write-once, run-anywhere remains an unattained ideal.
Here are some of the problems we know about.
- The Teaching Machine Doesn't Start At All.
Check the following:
- Make sure you give the TM enough time to download. It is a few hundred kilobytes and
takes a while over a phone-modem.
- Ensure that Java is enabled. In I.E. 5.0, set Java Permissions to at "High
Safety" (or a lower safetly level) in the security tab of the Internet Options.
- In I.E. 5.0, you also have to enable "Script ActiveX controls marked safe for
scripting" in the security tab of the Internet Options.
- Make sure that you are using at least Internet Explorer 4.0 or Netscape Navigator (or
Communicator) 4.08. If you are using Netscape 6.0, that could be the problem; Java support
on Netscape 6.0 appears very weak. Internet Explorer is recommended for the Teaching
Machine.
- Windows Go Blank.
If windows within the Teaching Machine become
blank, when they are brought to the forground, you may need upgrade your Java system. We
have only seen this problem under Windows NT with Internet Explorer 4.0.
- Check if your build of the Java system is before 3186. To do this use find jview.exe in
explorer, right click on jview.exe, and select properties. Look at the "file
version" on the "version" tab; the last 4 digits are the build number.
- If your virtual machine is prior to build 3188, you have a serious security risk on your
machine, so you need to upgrade anyway. See security bulletins 99-031 and 99-045 from
Microsoft. (Try this link: security
bulletins.)
- To get the latest version of Java from Microsoft search Microsoft's web sites using
keywords like "microsoft virtual machine", which is what they now call their
Java virtual machine. (I used to have a link here, but linking to a Microsoft Site is a
great way to have stale links. You can try clicking here.)
- I can offer no guarrantee that anything from Microsoft will work. The first time I ran
this installer it wiped out my Java system, but the second time it worked fine.
- It's Slow As Molasses.
Under Netscape and Windows, loading a file
can take up to a minute. We have no idea why. The best advice we have is to get Internet
Explorer 5.0 --- or Linux.
If you are using Internet Explorer and it's slow, make sure that you have enabled JIT
(Just in Time Compilation). See the Advanced tab of Internet Options.
The Language Accepted by the Teaching Machine
This release supports only C++, and then only a subset of C++, so your perfectly valid
C++ program may cause the Teaching Machine to complain.
Furthermore, the Teaching Machine makes only the spottiest attempt to certify that your
code is valid C++ before executing it. We recommend compiling all examples, with a real
compiler, prior to running them on the Teaching Machine.
There is no good documentation of the supported subset yet. However a description of
the syntax accepted by the parser is available in EBNF form here.
Bugs and wishes
A list of known bugs and suggested improvments for the current version of the teaching
machine is listed here.
Send reports of bugs and suggested improvements to theo@engr.mun.ca.