DataMuseum.dk

Presents historical artifacts from the history of:

RegneCentralen RC850

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about RegneCentralen RC850

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦0ded4cd24⟧ TextFile

    Length: 6016 (0x1780)
    Types: TextFile
    Names: »MICRO.LOG«

Derivation

└─⟦0c23030ba⟧ Bits:30005892 LPA Prolog rel 2.0 (RC855)
    └─⟦this⟧ »MICRO.LOG« 

TextFile

micro-mod
(which all ask one add kill edit cedit space delete list true-of
accept function # save load dir PROD
ON APPEND CONS reserved @ % = ü - + *)
(yes c func end help Expression-Parse exptran-mod)
((COPYRIGHT 1983 LPA LTD (V 12-2)))
((dir x)(DIR x X)(PP X))
((save x)(SAVE x))
((load x)(LOAD x)(SPACE X)(PP X K free))
((which (XøY))(exp-parse Y Y1)
  (? Y1)
  (PP X)
  FAIL)
((which X)(PP No (more) answers))
((all X)(which X))
((one (XøY))(exp-parse Y Y1)
  (? Y1)
  (P X)
  (R Z)
  (NOT EQ Z c))
((one X)(PP No (more) answers))
((ask X)(exp-parse X X1)(IF (? X1)((PP yes))((PP no))))
((add X)
  (INT X)
  /(LESS 0 X)
  (R Z)(EQ Z (xøY))(SUM 1 X1 X)(exp-parse Y Y1)
  (ADDCL (xøY1) X1))
((add Z)(EQ Z (xøX))(exp-parse X X1)
  (ADDCL (xøX1) 32767))
((exp-parse ()())/)
((exp-parse ((= x y)øZ) ((# (EQ x1 y1) Y)øZ1))
  ("?EQNTEST?" Y)/
  (Expression-Parse (x y) (x1 y1) Y)(exp-parse Z Z1))
((exp-parse ((# xøy)øZ) ((# (xø y1) Y)øZ1))
  (NOT LST x)("?EQNTEST?" Y)/
  (Expression-Parse y y1 Y)(exp-parse Z Z1))
((exp-parse (XøY) (XøZ))(exp-parse Y Z))
(("?EQNTEST?" X)(VAR X)/)
(("?EQNTEST?" X)(OPMOD exptran-mod)CLMOD)
((kill all)
  /
  (P Whole program "?(yes/no)")
  (R X)
  (EQ X yes)
  (KILL ALL)(SPACE Y)
  (PP Whole program deleted  Y K free))
((kill X)
  (OPMOD X)
  /
  CLMOD
  (KILL X)(SPACE Y)
  (PP Module X deleted  Y K free))
((kill X)
  (KILL X)
  (PP All clauses for X deleted))
((delete X)
  (CON X)/(R Y)
  (IF (DELCL X Y) () ((PP No such clause))))
((delete X)
  (OR ((DELCL X)) ((PP No such clause))))
((list all)/(LIST ALL))
((list X)
  (LIST X))
((accept X)
  (CON X)(P X)
  (R Y)
  (OR ((LST Y) (ADDCL ((X øY))) /(accept X)) 
      ((OR ((EQ Y end)) ((P " " Y not a list)(PP)(accept X)))) 
  ))
((function x)(CON x)(OR ((CL ((func x)))/) ((ADDCL ((func x))))))
((reserved Y)(DICT x1 y YøZ))
((cedit X) (ed X /*))
((edit X) (ed X DELCL))
((ed X X5)
  (CON X)
  (R Y)
  (INT Y)
  (CL ((XøZ)øx) Y Y)(exp-parse Z1 x)
  (RFILL (Y ((XøZ)øZ1)) y1) (INT y1)(R Z3)(LESS 0 y1)(EQ Z3 (Z4øy))
  (exp-parse y Z2)
  (EQ Z4 (zøX1))(NOT SYS (zøX1))(SUM 1 y2 y1) (X5 X Y)(ADDCL (Z4øZ2) y2)
  (IF (EQ X z)() ((PP relation changed to z))))
((space X)
  (SPACE Y)
  (P Y)
  (PP K left))
((# X Y)
 (? Y)/
 X)
((APPEND () X X))
((APPEND (XøY) Z (Xøx))
  (APPEND Y Z x))
((ON X (XøY)))
((ON X (YøZ))
  (ON X Z))
((CONS X Y (XøY)))
((@ x øy) (xøy))
((true-of x y)(xøy))
((%  Y Z X)
  (TIMES X Z Y))
(("-" Y Z X)
  (SUM Z X Y))
((+ Y Z X)
  (SUM Y Z X))
((* Y Z X)
  (TIMES Y Z X))
((PROD X Y Z)/
  (TIMES X Y Z)
  (INT X)
  (INT Y)
  (INT Z))
((PROD X Y Z x)
  (VAR Y)
  (VAR x)
  /
  (TIMES X y Z)
  (INT y Y)
  (TIMES X Y z)
  (SUM x z Z))
((PROD X Y Z x)
  (VAR X)
  (VAR x)
  (TIMES Y y Z)
  (INT y X)
  (TIMES Y X z)
  (SUM x z Z))
CLMOD
errtrap-mod ("?ERROR?") (q e s f c is-told tell) 
((P-code 0 "Arithmetic overflow"))
((P-code 1 "Arithmetic underflow"))
((P-code 2 "No clauses for"))
((P-code 3 "Control error"))
((P-code 4 "Error in adding clause"))
((P-code 5 "File error"))
((P-code 6 "Too many files opened at once"))
((P-code 7 "Close all files first"))
((P-code 8 "Bad data in file"))
((P-code 9 "Write error"))
((P-code 10 "Disk or directory is full"))
((P-code 11 "Break !"))
((P-code 12 "Illegal use of modules"))
((P-code X (Error X)))
(("?ERROR?" X Y)
  (P-code X Z)/
  (P Z Y)(PP)
  (P "error&(? for info)") (R x)(respond x Y))
((respond q X)
  (ABORT))
((respond e X)
  /(RFILL (X) Y)Y)
((respond c X)
 / X)
((respond tell X)/(is-told (X)))
((respond f X)/FAIL)
((respond s X)/)
((respond / X)/
  (R x)(R Y)
  (x Y)
  (P "error&") (R Z)
  (respond Z X))
((respond y (YøY1))
  (PP to quit enter: q )
  (PP to fail call enter:f)
  (PP to succeed call enter:s)
  (PP to line edit call and resume enter:e)
  (P or enter / "<any command>" (eg / add "<clause>",/ LOAD file))(PP)
  (PP or enter:tell(see manual))
  (PP to resume enter: c)
  (P "error&")(R x)
  (respond x (YøY1)))
CLMOD
told-mod (is-told)(yes no just ans)
((is-told X)( LST X)/(told X))
((is-told øX)(told X))
((told X)(P øX)(P " ? ")
  (R Y)(answer X Y))
((answer X yes)/)
((answer X no)/FAIL)
((answer X just)/(match X))
((answer X ans) (match X)) 
((answer X x) (NOT EQ x ans)(P x ignored - enter: yes/no/ans ..
  /just ..)(PP)FAIL)
((answer X x)(told X)) 
((match ())/)
((match (xøX))
  (VAR x)/(R x)(match X))
((match ((xøy)øX))/
  (match (xøy))
  (match X))
((match (xøX))
  (match X))
CLMOD
exptran-mod
( Expression-Parse )
(@ # + - ü * % 
APPEND CONS func & and yes rel-form)
((less + x2)) 
((less "-" x2))
((less ü x2))
((op x)
  (NOT VAR x)
  (sysop x))
((fn x)
  (CON x)(fn1 x))
((fn1 APPEND))
((fn1  @))
((fn1 x)(CL ((func x))))
((fn1 x)
  (PP x assumed not to be function name)FAIL)
((sysop +))
((sysop ü))
((sysop "-"))
((sysop *))
((sysop %))
((sysop /))
(("?EQNS-IN?"))
((Expression-Parse x y z)
  (VAR z)/
  (X-parse x y z ()))
((Expression-Parse x x z)
  (NOT CL ((rel-form)))(symbval z))
((symbval ())/)
((symbval ((XøY)øZ))
  (APPEND Y1 (x) Y)/
  (IF (sysop X) ((EQ Y1 (y1 y2))(EQ x (y1 X y2))) ((EQ x (XøY1))))
  (symbval Z))
((name / %)/)
((name ü -)/)
((name x x))
((X-parse x x y y) (NOT LST x)/)
((X-parse (y1 x y2) z Z Y)
  (op x)
  (X-parse y1 z1 Z Y1)(name x x1)
  (X-parse y2 z2 Y1 ((x1 z1 z2 z)øY))
  /)
((X-parse (y1 x1 y2 x2 øY) z Z X)
  (op x1)(op x2)/
  (IF (less x1 x2) ((X-parse (y1 x1 (y2 x2øY)) z Z X))
				 ((X-parse ((y1 x1 y2)x2øY) z Z X)))
  )
((X-parse (x y Y) z ((CONS y1 Y1 z)øZ) Z1)
  (NOT VAR x)(EQ x CONS)/
  (Zip (y Y) (y1 Y1) Z Z1))
((X-parse (xøY) z Z Z1)
  (fn x)/
  (Zip Y Y1 Z ((xøY2)øZ1))
  (APPEND Y1 (z) Y2))
((X-parse X Y Z Z1)
  (Zip X Y Z Z1))
((Zip x x y y )
  (NOT LST x)
  /)
((Zip ()() y y)/)
((Zip (yøY) (y1øY1) Z Z2)
  (X-parse y y1 Z Z1)
  (Zip Y Y1 Z1 Z2))
CLMOD
 
«eof»