home *** CD-ROM | disk | FTP | other *** search
- <TITLE>How to run ArmBob programs</TITLE>
- <H2>How to run ArmBob programs</H2>
- When the !Armbob application
- <IMG SRC="!Sprites#!ArmBob">
- has been seen, or
- has been filer_booted, four new filetypes are defined:
- <UL>
- <LI><A HREF="#BobFile">
- <IMG SRC="!Sprites#file_04a" ALT="filetype 04a" ALIGN=MIDDLE>
- BobFile</A>
- <LI><A HREF="#BobTask">
- <IMG SRC="!Sprites#file_04b" ALT="filetype 04b" ALIGN=MIDDLE>
- BobTask</A>
- <LI><A HREF="#BobProj">
- <IMG SRC="!Sprites#file_04c" ALT="filetype 04c" ALIGN=MIDDLE>
- BobProj</A>
- <LI><A HREF="#BobPTask">
- <IMG SRC="!Sprites#file_04d" ALT="filetype 04d" ALIGN=MIDDLE>
- BobPTask</A><BR>
- </UL>
- Double-clicking on files of these types will cause them to run.
- Files of any of these types can be edited by holding down SHIFT and
- double clicking on them. They can be created initially as text files,
- with their filetypes altered later from the filer menu, or as blank
- files of the appropriate type, created by filling in the filetype
- in the blank option of Edit's <EM>Create </EM> Submenu from the
- iconbar.
- <P>
- Double clicking <KBD>!ArmBob </KBD>
- <IMG SRC="!Sprites#!ArmBob" ALT="">
- sets up the BobFile, TaskBob, BobProj and BobPTask
- filetypes and their run actions, and opens a filer window on a
- directory for holding Armbob programs. The path prefix to this
- directory is <KBD>Bob:</KBD>. It also turns off trace and debug
- mode. To debug or trace it is more convenient to run the program
- in a taskwindow (just change the filetype). Debug or trace mode
- is enabled by double-clicking the relevant Obey files.
- <P>
- Armbob programs are run by first being compiled into an intermediate
- code for a virtual stack-machine, which is then invoked to run the
- code. Compiler errors cause a window to open with an error message.
- Clicking on the <KBD>throwback </KBD> icon causes the relevant source file
- to be displayed in an edit window, with the error line highlighted.
- Runtime errors do not do this (yet!).
- <HR>
- <H3>
- <A NAME="BobFile">BobFile Programs </A>
- <IMG SRC="!Sprites#file_04a" ALT="filetype 04a" ALIGN=MIDDLE>
- </H3>
- BobFiles are analogous to Basic files. Double click on
- them to make them run (in a command window, unless a mode
- change command is given). Everything should be run from
- within the desktop. There is no Armbob equivalent to the
- Basic interface (with the Basic prompt > ).
- <HR>
- <H3>
- <A NAME="BobTask">BobTask Programs </A>
- <IMG SRC="!Sprites#file_04b" ALT="filetype 04b" ALIGN=MIDDLE>
- </H3>
- BobTask files run in a taskwindow when double clicked.
- They are only appropriate for programs with textual
- input and output. For graphics use a BobFile.
- <HR>
- <H3>
- <A NAME="BobProj">BobProj Programs </A>
- <IMG SRC="!Sprites#file_04c" ALT="filetype 04c" ALIGN=MIDDLE>
- </H3>
- BobProj files are appropriate for large programs
- stretching over many files. They contain a list of
- the program files (which might as well have the
- text filetype). Double click on a BobProj file to
- compile and run in a command window the program
- contained in the files that it lists.
- Click here for the syntactic <A HREF="#rules"> rules </A>
- for BobProj files.
- <HR>
- <H3>
- <A NAME="BobPTask">BobPTask Programs </A>
- <IMG SRC="!Sprites#file_04d" ALT="filetype 04d" ALIGN=MIDDLE>
- </H3>
- BobPTask files are appropriate for large programs
- stretching over many files. They contain a list of
- the program files (which might as well have the
- text filetype). Double click on a BobPTask file to
- compile and run in a taskwindow the program
- contained in the files that it lists.
- Click here for the syntactic <A HREF="#rules"> rules </A>
- for BobPTask files.
- <HR>
- <H4>
- <A NAME="rules">Rules for Project Files</A>
- </H4>
- <UL>
- <LI>Lines whose first non blank character is | are comments.
- <LI>Non comment lines should have the pathname of a file for first
- word. Blank lines are permitted (version 2.1 onwards).
- <LI>Files which create an instance object of a class must be preceded
- by files defining the class.
- </UL>