home *** CD-ROM | disk | FTP | other *** search
/ APDL Public Domain 1 / APDL_PD1A.iso / program / language / sbprolog / !ReadMe1st next >
Encoding:
Text File  |  1992-02-23  |  4.5 KB  |  111 lines

  1. CONTENTS OF PRELIMINARY DISTRIBUTION OF RISC OS PORT OF SB-PROLOG 3.1
  2. ---------------------------------------------------------------
  3.  
  4. (RISC OS sub-version 0.2)
  5.  
  6. WARNING WARNING WARNING:  Read all of this document before trying to use
  7. SB prolog!
  8.  
  9. !sbp    -       An application directory for prolog system.  If you have Acorn's
  10.                 Desktop development environment installed, or use RISC OS 3,
  11.                 running this should open a taskwindow running sbp (see below).
  12.  
  13. sbp     -       Script running SB-prolog configured for general purpose use on
  14.                 4M byte Arc.
  15. sbs     -       Script running small SB-prolog (too small to run compiler)
  16.                 suitable for 2M machines.
  17. sbpc    -       Script running SB-prolog configured with (roughly) minimum
  18.                 size memory areas large enough to compile sizeable Prolog programs.
  19.  
  20. bench   -   Some nice benchmarks to check out SB-prologs performance
  21.  
  22. MANUAL -      Ascii text version of the SB-Prolog manual
  23.  
  24. MANUALps -   Postscript version of the SB-Prolog manual
  25.  
  26. Command Line Option arguments to sbprolog
  27. --------------------------------------
  28.  
  29. The sbprolog interpreter is invoked from the RISC OS command line with 
  30. a command of the form
  31.  
  32. sbprolog  <option> ... <compiled_prolog>
  33.  
  34. where <compiled_prolog> is the name of a file containing compiled SB prolog
  35. and <option>s are command line arguments of the form:
  36.  
  37. -T generate trace at entry to each called routine
  38. -d generate disassemled dump compiled file given as last argument
  39. -n adds machine addresses to traces and or dumps
  40. -s Makes the interpreter take more care of maintaining the statistics printed
  41.    out by the predicate ``statistics''.
  42. -m <size> Sets the extent of the Prolog stack area to <size> entries each
  43.           entry requires 4 bytes of memory
  44.  
  45. -p <size> Sets the extent of the Prolog program area to <size> entries.  Each
  46.           entry requirs 4 bytes.
  47.  
  48. -b <size> Sets the size of the Prolog backtrack trail area.  This is set to
  49.           the -m value divided by 5 by default.
  50.  
  51. When sbprolog runs it expects the operating system SIMPATH to contain
  52. search path telling it where to find the various compiled prolog libraries
  53. it needs to run.    This is usually set by the !boot file in !sbp, but if !sbp
  54. is not in a directory mentioned on your Run$Path you will need to set it
  55. manually or open the directory containing !sbp.
  56.  
  57. DIFFERENCES FROM UNIX VERSION DESCRIBED IN ``MANUAL''
  58. ------------------------------------------------
  59.  
  60. 1. The pathnames in the search path given in by the variable SIMPATH are
  61. seperated by ;'s rather than :'s as in the UNIX version.   This is because :'s
  62. frequently appear in full RISC OS pathnames.
  63.  
  64. 2.  Some massaging is done of the pathnames submitted to the ``load'' command.
  65.     $'s are stripped out and the final filename in the path truncated to ensure
  66.     it is no more than 10 characters long.
  67.  
  68.         These modifications are necessary to allow the SB-prolog's autoloading
  69.     mechanism to work properly.   SB-prolog uses the name of a module
  70.     that needs to be loaded as the filename of the file that is supposed to
  71.     define that module.  Unfortunately, because under UNIX filenames can be
  72.     very long, and may contain $'s these the writers of SB prolog used long
  73.     module names and a convention of prefixing module names
  74.     (and internal predicate names) with $.   Changing all this in the source code
  75.     would be a nightmare, and since all the names were  unique in the first 10
  76.     characters after the $ I decided to hack filenames instead.
  77.  
  78.     Thus: when building new auto-load modules it is important to ensure they
  79.     are given names that differ in the first 10 characters (ignoring $'s) from
  80.     any other module name.
  81.  
  82.     3 New Predicates have been added.
  83.  
  84. $riscos( +PathName, +Prefix, -NewName )
  85.  
  86.         Given a string PathName "d1.d2. ... .dn.filename" and a string Prefix this
  87. predicate succeeds with NewName "d1.d2. ... dn.Prefix.filename". 
  88.  
  89. seenall
  90.  
  91.         Does a ``seen'' on all files currently open for input (except for standard
  92.         input, output, and error streams).   Useful for closing files left open
  93.         after an error during consultation / compilation.  RISC OS, remember,
  94.         locks out any modification of open files.
  95.  
  96. toplev
  97.  
  98.         Does the same as ``seenall,abort''.  Useful for dropping back to the
  99.         level 0 command prompt after interrupting a compilation or consultation.
  100.  
  101. If you have troubles - drop me a line (preferably by email!)
  102.  
  103. Andrew Stevens
  104. 18 King's Meadow
  105. Overton
  106. Hampshire
  107. RG25 3HP
  108. Great Britain
  109.  
  110. Andrew.Stevens@prg.oxford.ac.uk
  111.