;ELC ;;; compiled by jwz@thalidomide on Thu Mar 24 13:24:21 1994 ;;; from file /th/jwz/emacs19/lisp/modes/simula.el ;;; emacs version 19.10 Lucid (beta9). ;;; bytecomp version 2.22; 22-dec-93. ;;; optimization is on. ;;; this file uses opcodes which do not exist in Emacs 18. (if (and (boundp 'emacs-version) (or (and (boundp 'epoch::version) epoch::version) (string-lessp emacs-version "19"))) (error "This file was compiled for Emacs 19.")) (provide 'simula-mode) (defconst simula-tab-always-indent nil "\ *Non-nil means TAB in SIMULA mode should always reindent the current line. Otherwise TAB indents only when point is within the run of whitespace at the beginning of the line.") (defconst simula-indent-level 3 "\ *Indentation of SIMULA statements with respect to containing block.") (defconst simula-substatement-offset 3 "\ *Extra indentation after DO, THEN, ELSE, WHEN and OTHERWISE.") (defconst simula-continued-statement-offset 3 "\ *Extra indentation for lines not starting a statement or substatement. If value is a list, each line in a multipleline continued statement will have the car of the list extra indentation with respect to the previous line of the statement.") (defconst simula-label-offset -4711 "\ *Offset of SIMULA label lines relative to usual indentation.") (defconst simula-if-indent '(0 . 0) "\ *Extra indentation of THEN and ELSE with respect to the starting IF. Value is a cons cell, the car is extra THEN indentation and the cdr extra ELSE indentation. IF after ELSE is indented as the starting IF.") (defconst simula-inspect-indent '(0 . 0) "\ *Extra indentation of WHEN and OTHERWISE with respect to the INSPECT. Value is a cons cell, the car is extra WHEN indentation and the cdr extra OTHERWISE indentation.") (defconst simula-electric-indent nil "\ *Non-nil means `simula-indent-line' function may reindent previous line.") (defconst simula-abbrev-keyword 'upcase "\ *Specify how to convert case for SIMULA keywords. Value is one of the symbols `upcase', `downcase', `capitalize', (as in) `abbrev-table' or nil if they should not be changed.") (defconst simula-abbrev-stdproc 'abbrev-table "\ *Specify how to convert case for standard SIMULA procedure and class names. Value is one of the symbols `upcase', `downcase', `capitalize', (as in) `abbrev-table', or nil if they should not be changed.") (defvar simula-abbrev-file nil "\ *File with extra abbrev definitions for use in SIMULA mode. These are used together with the standard abbrev definitions for SIMULA. Please note that the standard definitions are required for SIMULA mode to function correctly.") (defvar simula-mode-syntax-table nil "\ Syntax table in SIMULA mode buffers.") (byte-code "!##############‡" [simula-mode-syntax-table copy-syntax-table nil modify-syntax-entry 33 "<" 36 "." 37 39 "\"" 40 "()" 41 ")(" 59 ">" 91 92 93 95 "w" 124 123 125] 4) (defvar simula-mode-map nil "\ Keymap used in SIMULA mode.") (byte-code " #######" [simula-mode-map make-sparse-keymap define-key "" simula-backward-up-level "" simula-previous-statement "" simula-forward-down-level "" simula-next-statement "" backward-delete-char-untabify ":" simula-electric-label " " simula-indent-command] 4) (defvar simula-mode-abbrev-table nil "\ Abbrev table in SIMULA mode buffers") (fset 'simula-mode #[nil " \n!!!\n !!!!!!!!!!!\"\" )$!!" [kill-all-local-variables use-local-map simula-mode-map simula-mode major-mode "SIMULA" mode-name make-local-variable comment-column 40 end-comment-column 75 set-syntax-table simula-mode-syntax-table paragraph-start "^[ ]*$\\|\\f" paragraph-separate indent-line-function simula-indent-line require-final-newline t comment-start "! " comment-end " ;" comment-start-skip "!+ *" parse-sexp-ignore-comments nil comment-multi-line simula-mode-abbrev-table simula-abbrev-file read-abbrev-file define-abbrev-table abbrevs-changed simula-install-standard-abbrevs local-abbrev-table abbrev-mode 1 run-hooks simula-mode-hook] 3 "\ Major mode for editing SIMULA code. \\{simula-mode-map} Variables controlling indentation style: simula-tab-always-indent Non-nil means TAB in SIMULA mode should always reindent the current line, regardless of where in the line point is when the TAB command is used. simula-indent-level Indentation of SIMULA statements with respect to containing block. simula-substatement-offset Extra indentation after DO, THEN, ELSE, WHEN and OTHERWISE. simula-continued-statement-offset 3 Extra indentation for lines not starting a statement or substatement, e.g. a nested FOR-loop. If value is a list, each line in a multiple- line continued statement will have the car of the list extra indentation with respect to the previous line of the statement. simula-label-offset -4711 Offset of SIMULA label lines relative to usual indentation. simula-if-indent '(0 . 0) Extra indentation of THEN and ELSE with respect to the starting IF. Value is a cons cell, the car is extra THEN indentation and the cdr extra ELSE indentation. IF after ELSE is indented as the starting IF. simula-inspect-indent '(0 . 0) Extra indentation of WHEN and OTHERWISE with respect to the corresponding INSPECT. Value is a cons cell, the car is extra WHEN indentation and the cdr extra OTHERWISE indentation. simula-electric-indent nil If this variable is non-nil, `simula-indent-line' will check the previous line to see if it has to be reindented. simula-abbrev-keyword 'upcase Determine how SIMULA keywords will be expanded. Value is one of the symbols `upcase', `downcase', `capitalize', (as in) `abbrev-table', or nil if they should not be changed. simula-abbrev-stdproc 'abbrev-table Determine how standard SIMULA procedure and class names will be expanded. Value is one of the symbols `upcase', `downcase', `capitalize', (as in) `abbrev-table', or nil if they should not be changed. Turning on SIMULA mode calls the value of the variable simula-mode-hook with no arguments, if that value is non-nil Warning: simula-mode-hook should not read in an abbrev file without calling the function simula-install-standard-abbrevs afterwards, preferably not at all." nil]) (fset 'simula-indent-line #[nil "d`Z Ŏ yw! ?  =? j)," [simula-calculate-indent t case-fold-search indent origin ((byte-code "dZb \n= \nj" [origin current-indentation indent back-to-indentation delete-horizontal-space] 2)) 0 expand-abbrev simula-electric-indent " " nil looking-at "\\(end\\|if\\|then\\|else\\|when\\|otherwise\\)\\>" simula-context post-indent current-indentation delete-horizontal-space] 3 "\ Indent this line as SIMULA code. If `simula-electric-indent' is non-nil, indent previous line if necessary."]) (fset 'simula-indent-command #[(&optional whole-exp) "\n xn)y ) d`Zxn)ʼn \n   ώ =xn) y j)` \ny`\n b!` \nV =?\n  Z$). )" [t case-fold-search whole-exp simula-tab-always-indent " " nil 0 simula-calculate-indent current-indentation end beg bol origin current indent ((byte-code "d Zb‡" [bol origin nil] 2)) back-to-indentation delete-horizontal-space 1 simula-next-statement indent-code-rigidly "%" insert-tab] 7 "\ Indent current line as SIMULA code, or insert TAB character. If `simula-tab-always-indent' is non-nil, always indent current line. Otherwise, indent only if point is before any non-whitespace character on the line. A numeric argument, regardless of its value, means indent rigidly all the lines of the SIMULA statement after point so that this line becomes properly indented. The relative indentation among the lines of the statement are preserved." "P"]) (fset 'simula-context #[nil "yg)=‡`ex oyg=`Wwuh=`ih=wg=`SuNg=uwg=`5u0!x`*` W( #(h>h> #qh=lyo!MIh> w ;` W6g=Éonyu w]h= # h=` =mu #y +" [0 37 1 nil origin return-value "^;" saved-point loopvalue "^;\"'" 59 34 "^\";" t 39 "^';" backward-char re-search-forward "\\\\|!\\|\"\\|'\\|^%\\|\\" move (100 68) 2 (100 68) ";\\|\\\\|\\\\|\\\\|\\\\|^%" looking-at "[ \n ]*\\(;\\|\\\\|\\\\|\\\\|\\\\)" (33 116 84) "^%;" search-forward "\"" 3 4 "'"] 5 "\ Returns value according to syntactic SIMULA context of point. 0 point inside COMMENT comment 1 point on SIMULA-compiler directive line 2 point inside END comment 3 point inside string 4 point inside character constant nil otherwise."]) (fset 'simula-electric-label #[nil " cd`Z! ! C \n ̎ >? > =g>? ?!xx!?xn  j)," [expand-abbrev 58 t fboundp next-command-event event-to-character unread-command-event read-event unread-command-events next-char case-fold-search origin ((byte-code "dZb" [origin] 2)) (61 45) (10 13) 9 simula-tab-always-indent (61 45) simula-context backward-char 1 " " nil "a-zA-Z0-9_" looking-at "virtual\\>" simula-calculate-indent amount delete-horizontal-space] 5 "\ If this is a label that starts the line, reindent the line." nil]) (fset 'simula-backward-up-level #[(count) "`ŏ*" [t case-fold-search origin nil (byte-code "VV! sg>STeW!! g>TS!]" [count 0 re-search-backward "\\\\|\\" simula-context (98 66) re-search-forward backward-word 1 (101 69) -1] 3) ((error (byte-code "b!" [origin error "No higher block level"] 2)) (quit (byte-code "b\"" [origin signal quit nil] 3)))] 3 "\ Move backward up COUNT block levels. If COUNT is negative, move forward up block level instead." "p"]) (fset 'simula-forward-down-level #[(count) "`Ǐ+" [count t case-fold-search origin start-count nil (byte-code "WW! g>TSWa\"ZV!! g>ST!VY\"R" [count 0 re-search-backward "\\\\|\\" simula-context (101 69) start-count signal error nil re-search-forward backward-word 1 (98 66) -1] 3) ((error (byte-code "b!" [origin error "No containing block level"] 2)) (quit (byte-code "b\"" [origin signal quit nil] 3)))] 3 "\ Move forward down COUNT block levels. If COUNT is negative, move backward down block level instead." "p"]) (fset 'simula-previous-statement #[(count) "W[!`ɏ+" [count 0 simula-next-statement nil t origin case-fold-search status (byte-code " h>!!!h=!\nS\n!#lg=u! " [simula-skip-comment-backward (110 78) backward-word 1 looking-at "\\" -1 59 backward-char natnump count simula-search-backward ";\\|\\" nil move status simula-skip-comment-forward] 4) ((error (byte-code "b!" [origin error "Incomplete statement (too many ENDs)"] 2)) (quit (byte-code "b\"" [origin signal quit nil] 3)))] 3 "\ Move backward COUNT statements. If COUNT is negative, move forward instead." "p"]) (fset 'simula-next-statement #[(count) "W[!`ɏ+" [count 0 simula-previous-statement nil t origin case-fold-search status (byte-code " !v S!d# n hU?! " [simula-skip-comment-forward looking-at "\\" 1 natnump count simula-search-forward ";\\|\\" move status 59 backward-word simula-skip-comment-backward] 4) ((error (byte-code "b!" [origin error "Incomplete statement (too few ENDs)"] 2)) (quit (byte-code "b\"" [origin signal quit nil] 3)))] 3 "\ Move forward COUNT statements. If COUNT is negative, move backward instead." "p"]) (fset 'simula-skip-comment-backward #[nil "" [simula-out (byte-code "xh=! )  >h=g>x!)xI\"B =!8 >u0 =o%\" =!v\" " [nil context " \n " 59 backward-char 1 simula-context (nil 3 4) 58 (45 61) ": a-zA-Z0-9_" looking-at "virtual\\>" throw simula-out 0 re-search-backward "!\\|\\" (0 1) 2 "\\"] 3)] 2 "\ Search towards bob to find first char that is outside a comment." nil]) (fset 'simula-skip-comment-forward #[nil "" [simula-out (byte-code "w!#ong=yb!!wR\"K" [" \n " nil looking-at "!\\|\\" search-forward ";" move 37 1 "[a-z0-9_]*[ ]*:[^-=]" "virtual\\>" "a-zA-Z0-9_ :" throw simula-out t] 4)] 2 "\ Search towards eob to find first char that is outside a comment." nil]) (byte-code "MM" [simula-forward-up-level #[nil "`e# h>\n>? `\\ b-" [t nil temp return-value case-fold-search origin continue-loop re-search-backward "\\\\|\\" move simula-context (100 68) (nil 2) simula-forward-up-level] 6] simula-calculate-indent #[nil " `‰ \n=xn =!qwi b6\n=!6\n=!6  6w![!g>@g>Av !g>!@!A !!% h=h>!!)?ث! y`)o?hz=!!?h>?)n4# og=!!\\!v!!2\\ ! >v2 >@A\\\\ !2 >@A\\\\ 9<9@9\\y`)\n ?w!!?)  \\ o?hz=!!)?h>? 9<9<9@9\\ y`)\ny\n. " [simula-context 0 nil prev-cont found-end temp start-line continued indent origin where " \n " re-search-backward "^\\|!\\|\\" 3 error "Inside string" 4 "Inside character constant" simula-inside-parens " " looking-at "end\\>" simula-indent-level t "if\\>\\|then\\>\\|else\\>" (84 116) simula-if-indent (69 101) 1 simula-find-if "when\\>\\|otherwise\\>" (87 119) simula-inspect-indent simula-find-inspect "virtual\\>" "[a-z0-9_]*[ ]*:[^-=]" simula-label-offset simula-skip-comment-backward 59 (78 110) backward-word "begin\\>" simula-previous-statement 119 "begin\\|then\\|else\\|when\\|otherwise\\|do" (58 59) ";\\|\\<\\(begin\\|end\\|if\\|else\\|then\\|when\\|otherwise\\|do\\)\\>" move "do\\>" simula-substatement-offset simula-find-do-match "\\(if\\|then\\|else\\)\\>" (73 105) (84 116) "\\\\|\\" (87 119) simula-continued-statement-offset "virtual" "!\\|comment\\>\\|[a-z0-9_]*[ ]*:[^-=]" current-indentation (58 59)] 9]] 2) (fset 'simula-find-if #[nil "" [simula-out (byte-code "#g> hz=!!\")Y!!N\"G" [simula-search-backward "\\\\|;\\|\\" nil t (73 105) simula-skip-comment-backward 119 backward-word 1 looking-at "else\\>" throw simula-out "\\" error "Missing IF or misplaced BEGIN or ';' (can't find IF)"] 4)] 2 "\ Find starting IF of a IF-THEN[-ELSE[-IF-THEN...]] statement."]) (fset 'simula-find-inspect #[nil "" [simula-out (byte-code "#gUg> Tj U\"^ SY!S" [0 level simula-search-backward "\\\\|\\\\|;" nil t 59 (79 111) throw simula-out error "Missing INSPECT or misplaced ';' (can't find INSPECT)"] 4)] 2 "\ Find INSPECT matching WHEN or OTHERWISE."]) (fset 'simula-find-do-match #[nil "# u! ??!" [re-search-backward "\\<\\(do\\|for\\|while\\|inspect\\|when\\|end\\|begin\\)\\>\\|;" nil move simula-context looking-at "\\<\\(for\\|while\\|inspect\\|when\\)\\>" error "No matching FOR, WHILE or INSPECT for DO, or misplaced ';'"] 4 "\ Find keyword matching DO: FOR, WHILE, INSPECT or WHEN"]) (fset 'simula-inside-parens #[nil "Í*" [0 parlevel simula-out (byte-code "# =sg=U\"a![g=UiT\"HSAT:\"3" [re-search-backward "(\\|)\\|;" nil t simula-context 59 parlevel 0 throw simula-out error "Parenthesis mismatch or misplaced ';'" 40] 4)] 2 "\ Return position after `(' on line if inside parentheses, nil otherwise."]) (defun simula-goto-definition nil "\ Goto point of definition of variable, procedure or class." (interactive)) (byte-code "MM" [simula-expand-stdproc #[nil " =!=!=!" [simula-abbrev-stdproc simula-context unexpand-abbrev upcase upcase-word -1 downcase downcase-word capitalize capitalize-word] 2] simula-expand-keyword #[nil " =!=!=!" [simula-abbrev-keyword simula-context unexpand-abbrev upcase upcase-word -1 downcase downcase-word capitalize capitalize-word] 2]] 2) (fset 'simula-electric-keyword #[nil "= \"!!    =hz=!!)?*  =!=!=!d`Z ޏ*)" [this-command self-insert-command show-char insert-char last-command-char 1 sit-for 0 backward-char simula-context t case-fold-search where 2 119 backward-word looking-at "end\\>" unexpand-abbrev simula-abbrev-keyword upcase upcase-word -1 downcase downcase-word capitalize capitalize-word pos nil (byte-code "hz=!!! !`` \\{P!)xn  = j)wdZb!" [119 backward-word 1 looking-at "end\\>" simula-backward-up-level pos-visible-in-window-p sit-for message "Matches " window-width " " nil simula-calculate-indent indent current-indentation delete-horizontal-space pos show-char delete-char] 6) ((quit (byte-code "dZb" [pos] 2)))] 4 "\ Expand SIMULA keyword. If it starts the line, reindent."]) (byte-code "MM" [simula-search-backward #[(string &optional limit move) "Pō)" [string "\\|\\" nil level simula-out (byte-code " \n # u!!g! rg>STa\"G" [re-search-backward string limit move simula-context looking-at "\\" 0 level natnump "\\\\|\\" (98 66) throw simula-out t] 4)] 2] simula-search-forward #[(string &optional limit move) "Pō)" [string "\\|\\" nil level exit (byte-code " \n #Ĕb ĕSbj!ĕSb!W!! g>ST!YĕSb\"*" [re-search-forward string limit move 0 simula-context looking-at "\\" level natnump "\\\\|\\" backward-word 1 (101 69) -1 throw exit t] 4)] 2]] 2) (fset 'simula-install-standard-abbrevs #[nil "\"" [mapcar #[(args) "\n #" [apply define-abbrev simula-mode-abbrev-table args] 4] (("abs" "Abs" simula-expand-stdproc) ("accum" "Accum" simula-expand-stdproc) ("activate" "ACTIVATE" simula-expand-keyword) ("addepsilon" "AddEpsilon" simula-expand-stdproc) ("after" "AFTER" simula-expand-keyword) ("and" "AND" simula-expand-keyword) ("arccos" "ArcCos" simula-expand-stdproc) ("arcsin" "ArcSin" simula-expand-stdproc) ("arctan" "ArcTan" simula-expand-stdproc) ("arctan2" "ArcTan2" simula-expand-stdproc) ("array" "ARRAY" simula-expand-keyword) ("at" "AT" simula-expand-keyword) ("before" "BEFORE" simula-expand-keyword) ("begin" "BEGIN" simula-expand-keyword) ("blanks" "Blanks" simula-expand-stdproc) ("boolean" "BOOLEAN" simula-expand-keyword) ("breakoutimage" "BreakOutImage" simula-expand-stdproc) ("bytefile" "ByteFile" simula-expand-stdproc) ("call" "Call" simula-expand-stdproc) ("cancel" "Cancel" simula-expand-stdproc) ("cardinal" "Cardinal" simula-expand-stdproc) ("char" "Char" simula-expand-stdproc) ("character" "CHARACTER" simula-expand-keyword) ("checkpoint" "CheckPoint" simula-expand-stdproc) ("class" "CLASS" simula-expand-keyword) ("clear" "Clear" simula-expand-stdproc) ("clocktime" "ClockTime" simula-expand-stdproc) ("close" "Close" simula-expand-stdproc) ("comment" "COMMENT" simula-expand-keyword) ("constant" "Constant" simula-expand-stdproc) ("copy" "Copy" simula-expand-stdproc) ("cos" "Cos" simula-expand-stdproc) ("cosh" "CosH" simula-expand-stdproc) ("cotan" "CoTan" simula-expand-stdproc) ("cputime" "CpuTime" simula-expand-stdproc) ("current" "Current" simula-expand-stdproc) ("datetime" "DateTime" simula-expand-stdproc) ("decimalmark" "DecimalMark" simula-expand-stdproc) ("delay" "DELAY" simula-expand-keyword) ("deleteimage" "DeleteImage" simula-expand-stdproc) ("detach" "Detach" simula-expand-stdproc) ("digit" "Digit" simula-expand-stdproc) ("directbytefile" "DirectByteFile" simula-expand-stdproc) ("directfile" "DirectFile" simula-expand-stdproc) ("discrete" "Discrete" simula-expand-stdproc) ("do" "DO" simula-expand-keyword) ("downcase" "Downcase" simula-expand-stdproc) ("draw" "Draw" simula-expand-stdproc) ("eject" "Eject" simula-expand-stdproc) ("else" "ELSE" simula-electric-keyword) ("empty" "Empty" simula-expand-stdproc) ("end" "END" simula-electric-keyword) ("endfile" "Endfile" simula-expand-stdproc) ("entier" "Entier" simula-expand-stdproc) ("eq" "EQ" simula-expand-keyword) ("eqv" "EQV" simula-expand-keyword) ("erlang" "Erlang" simula-expand-stdproc) ("error" "Error" simula-expand-stdproc) ("evtime" "EvTime" simula-expand-stdproc) ("exp" "Exp" simula-expand-stdproc) ("external" "EXTERNAL" simula-expand-keyword) ("false" "FALSE" simula-expand-keyword) ("field" "Field" simula-expand-stdproc) ("file" "File" simula-expand-stdproc) ("first" "First" simula-expand-stdproc) ("follow" "Follow" simula-expand-stdproc) ("for" "FOR" simula-expand-keyword) ("ge" "GE" simula-expand-keyword) ("getchar" "GetChar" simula-expand-stdproc) ("getfrac" "GetFrac" simula-expand-stdproc) ("getint" "GetInt" simula-expand-stdproc) ("getreal" "GetReal" simula-expand-stdproc) ("go" "GO" simula-expand-keyword) ("goto" "GOTO" simula-expand-keyword) ("gt" "GT" simula-expand-keyword) ("head" "Head" simula-expand-stdproc) ("hidden" "HIDDEN" simula-expand-keyword) ("histd" "HistD" simula-expand-stdproc) ("histo" "Histo" simula-expand-stdproc) ("hold" "Hold" simula-expand-stdproc) ("idle" "Idle" simula-expand-stdproc) ("if" "IF" simula-expand-keyword) ("image" "Image" simula-expand-stdproc) ("imagefile" "ImageFile" simula-expand-stdproc) ("imp" "IMP" simula-expand-keyword) ("in" "IN" simula-expand-keyword) ("inbyte" "InByte" simula-expand-stdproc) ("inbytefile" "InByteFile" simula-expand-stdproc) ("inchar" "InChar" simula-expand-stdproc) ("infile" "InFile" simula-expand-stdproc) ("infrac" "InFrac" simula-expand-stdproc) ("inimage" "InImage" simula-expand-stdproc) ("inint" "InInt" simula-expand-stdproc) ("inner" "INNER" simula-expand-keyword) ("inreal" "InReal" simula-expand-stdproc) ("inrecord" "InRecord" simula-expand-stdproc) ("inspect" "INSPECT" simula-expand-keyword) ("integer" "INTEGER" simula-expand-keyword) ("intext" "InText" simula-expand-stdproc) ("into" "Into" simula-expand-stdproc) ("is" "IS" simula-expand-keyword) ("isochar" "ISOChar" simula-expand-stdproc) ("isopen" "IsOpen" simula-expand-stdproc) ("isorank" "ISORank" simula-expand-stdproc) ("label" "LABEL" simula-expand-keyword) ("last" "Last" simula-expand-stdproc) ("lastitem" "LastItem" simula-expand-stdproc) ("lastloc" "LastLoc" simula-expand-stdproc) ("le" "LE" simula-expand-keyword) ("length" "Length" simula-expand-stdproc) ("letter" "Letter" simula-expand-stdproc) ("line" "Line" simula-expand-stdproc) ("linear" "Linear" simula-expand-stdproc) ("linesperpage" "LinesPerPage" simula-expand-stdproc) ("link" "Link" simula-expand-stdproc) ("linkage" "Linkage" simula-expand-stdproc) ("ln" "Ln" simula-expand-stdproc) ("locate" "Locate" simula-expand-stdproc) ("location" "Location" simula-expand-stdproc) ("lock" "Lock" simula-expand-stdproc) ("locked" "Locked" simula-expand-stdproc) ("log10" "Log10" simula-expand-stdproc) ("long" "LONG" simula-expand-keyword) ("lowcase" "LowCase" simula-expand-stdproc) ("lowerbound" "LowerBound" simula-expand-stdproc) ("lowten" "LowTen" simula-expand-stdproc) ("lt" "LT" simula-expand-keyword) ("main" "Main" simula-expand-stdproc) ("max" "Max" simula-expand-stdproc) ("maxint" "MaxInt" simula-expand-stdproc) ("maxlongreal" "MaxLongReal" simula-expand-stdproc) ("maxloc" "MaxLoc" simula-expand-stdproc) ("maxrank" "MaxRank" simula-expand-stdproc) ("maxreal" "MaxReal" simula-expand-stdproc) ("min" "Min" simula-expand-stdproc) ("minint" "MinInt" simula-expand-stdproc) ("minlongreal" "MinLongReal" simula-expand-stdproc) ("minrank" "MinRank" simula-expand-stdproc) ("minreal" "MinReal" simula-expand-stdproc) ("mod" "Mod" simula-expand-stdproc) ("more" "More" simula-expand-stdproc) ("name" "NAME" simula-expand-keyword) ("ne" "NE" simula-expand-keyword) ("negexp" "NegExp" simula-expand-stdproc) ("new" "NEW" simula-expand-keyword) ("nextev" "NextEv" simula-expand-stdproc) ("none" "NONE" simula-expand-keyword) ("normal" "Normal" simula-expand-stdproc) ("not" "NOT" simula-expand-keyword) ("notext" "NOTEXT" simula-expand-keyword) ("open" "Open" simula-expand-stdproc) ("or" "OR" simula-expand-keyword) ("otherwise" "OTHERWISE" simula-electric-keyword) ("out" "Out" simula-expand-stdproc) ("outbyte" "OutByte" simula-expand-stdproc) ("outbytefile" "OutByteFile" simula-expand-stdproc) ("outchar" "OutChar" simula-expand-stdproc) ("outfile" "OutFile" simula-expand-stdproc) ("outfix" "OutFix" simula-expand-stdproc) ("outfrac" "OutFrac" simula-expand-stdproc) ("outimage" "OutImage" simula-expand-stdproc) ("outint" "OutInt" simula-expand-stdproc) ("outreal" "OutReal" simula-expand-stdproc) ("outrecord" "OutRecord" simula-expand-stdproc) ("outtext" "OutText" simula-expand-stdproc) ("page" "Page" simula-expand-stdproc) ("passivate" "Passivate" simula-expand-stdproc) ("poisson" "Poisson" simula-expand-stdproc) ("pos" "Pos" simula-expand-stdproc) ("precede" "Precede" simula-expand-stdproc) ("pred" "Pred" simula-expand-stdproc) ("prev" "Prev" simula-expand-stdproc) ("printfile" "PrintFile" simula-expand-stdproc) ("prior" "PRIOR" simula-expand-keyword) ("procedure" "PROCEDURE" simula-expand-keyword) ("process" "Process" simula-expand-stdproc) ("protected" "PROTECTED" simula-expand-keyword) ("putchar" "PutChar" simula-expand-stdproc) ("putfix" "PutFix" simula-expand-stdproc) ("putfrac" "PutFrac" simula-expand-stdproc) ("putint" "PutInt" simula-expand-stdproc) ("putreal" "PutReal" simula-expand-stdproc) ("qua" "QUA" simula-expand-keyword) ("randint" "RandInt" simula-expand-stdproc) ("rank" "Rank" simula-expand-stdproc) ("reactivate" "REACTIVATE" simula-expand-keyword) ("real" "REAL" simula-expand-keyword) ("ref" "REF" simula-expand-keyword) ("resume" "Resume" simula-expand-stdproc) ("setaccess" "SetAccess" simula-expand-stdproc) ("setpos" "SetPos" simula-expand-stdproc) ("short" "SHORT" simula-expand-keyword) ("sign" "Sign" simula-expand-stdproc) ("simset" "SimSet" simula-expand-stdproc) ("simulaid" "SimulaId" simula-expand-stdproc) ("simulation" "Simulation" simula-expand-stdproc) ("sin" "Sin" simula-expand-stdproc) ("sinh" "SinH" simula-expand-stdproc) ("sourceline" "SourceLine" simula-expand-stdproc) ("spacing" "Spacing" simula-expand-stdproc) ("sqrt" "Sqrt" simula-expand-stdproc) ("start" "Start" simula-expand-stdproc) ("step" "STEP" simula-expand-keyword) ("strip" "Strip" simula-expand-stdproc) ("sub" "Sub" simula-expand-stdproc) ("subepsilon" "SubEpsilon" simula-expand-stdproc) ("suc" "Suc" simula-expand-stdproc) ("switch" "SWITCH" simula-expand-keyword) ("sysin" "SysIn" simula-expand-stdproc) ("sysout" "SysOut" simula-expand-stdproc) ("tan" "Tan" simula-expand-stdproc) ("tanh" "TanH" simula-expand-stdproc) ("terminate_program" "Terminate_Program" simula-expand-stdproc) ("terminated" "Terminated" simula-expand-stdproc) ("text" "TEXT" simula-expand-keyword) ("then" "THEN" simula-electric-keyword) ("this" "THIS" simula-expand-keyword) ("time" "Time" simula-expand-stdproc) ("to" "TO" simula-expand-keyword) ("true" "TRUE" simula-expand-keyword) ("uniform" "Uniform" simula-expand-stdproc) ("unlock" "Unlock" simula-expand-stdproc) ("until" "UNTIL" simula-expand-keyword) ("upcase" "Upcase" simula-expand-stdproc) ("upperbound" "UpperBound" simula-expand-stdproc) ("value" "VALUE" simula-expand-keyword) ("virtual" "VIRTUAL" simula-expand-keyword) ("wait" "Wait" simula-expand-stdproc) ("when" "WHEN" simula-electric-keyword) ("while" "WHILE" simula-expand-keyword))] 3 "\ Define Simula keywords, procedures and classes in local abbrev table." nil])