\begin{patch}{ugWhatsNewLanguagePagePatch1} \begin{paste}{ugWhatsNewLanguagePageFull1}{ugWhatsNewLanguagePageEmpty1} \pastebutton{ugWhatsNewLanguagePageFull1}{\hidepaste} \tab{5}\spadcommand{set [1,2,3,4]} \indentrel{3}\begin{verbatim} (1) {1,2,3,4} Type: Set PositiveInteger \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{ugWhatsNewLanguagePageEmpty1} \begin{paste}{ugWhatsNewLanguagePageEmpty1}{ugWhatsNewLanguagePagePatch1} \pastebutton{ugWhatsNewLanguagePageEmpty1}{\showpaste} \tab{5}\spadcommand{set [1,2,3,4]} \end{paste}\end{patch} \begin{patch}{aspSectionPagePatch1} \begin{paste}{aspSectionPageFull1}{aspSectionPageEmpty1} \pastebutton{aspSectionPageFull1}{\hidepaste} \tab{5}\spadcommand{)display operation c05adf} \indentrel{3}\begin{verbatim} \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{aspSectionPageEmpty1} \begin{paste}{aspSectionPageEmpty1}{aspSectionPagePatch1} \pastebutton{aspSectionPageEmpty1}{\showpaste} \tab{5}\spadcommand{)display operation c05adf} \end{paste}\end{patch} \begin{patch}{aspSectionPagePatch2} \begin{paste}{aspSectionPageFull2}{aspSectionPageEmpty2} \pastebutton{aspSectionPageFull2}{\hidepaste} \tab{5}\spadcommand{f : FortranExpression([X],[M],MachineFloat) := sin(X)+M[3,1]} \indentrel{3}\begin{verbatim} (1) sin(X) + M 3,1 Type: FortranExpression([X],[M],MachineFloat) \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{aspSectionPageEmpty2} \begin{paste}{aspSectionPageEmpty2}{aspSectionPagePatch2} \pastebutton{aspSectionPageEmpty2}{\showpaste} \tab{5}\spadcommand{f : FortranExpression([X],[M],MachineFloat) := sin(X)+M[3,1]} \end{paste}\end{patch} \begin{patch}{aspSectionPagePatch3} \begin{paste}{aspSectionPageFull3}{aspSectionPageEmpty3} \pastebutton{aspSectionPageFull3}{\hidepaste} \tab{5}\spadcommand{f : FortranExpression([X],[M],MachineFloat) := sin(M)+Y} \indentrel{3}\begin{verbatim} sin(M) + Y \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{aspSectionPageEmpty3} \begin{paste}{aspSectionPageEmpty3}{aspSectionPagePatch3} \pastebutton{aspSectionPageEmpty3}{\showpaste} \tab{5}\spadcommand{f : FortranExpression([X],[M],MachineFloat) := sin(M)+Y} \end{paste}\end{patch} \begin{patch}{aspSectionPagePatch4} \begin{paste}{aspSectionPageFull4}{aspSectionPageEmpty4} \pastebutton{aspSectionPageFull4}{\hidepaste} \tab{5}\spadcommand{d01ajf(-1.0, 1.0, 0.0, 1.0e-5, 800, 200, -1, cond(LT(X,0), assign(F,-X), assign(F,X))) result} \indentrel{3}\begin{verbatim} (2) 1.0 Type: DoubleFloat \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{aspSectionPageEmpty4} \begin{paste}{aspSectionPageEmpty4}{aspSectionPagePatch4} \pastebutton{aspSectionPageEmpty4}{\showpaste} \tab{5}\spadcommand{d01ajf(-1.0, 1.0, 0.0, 1.0e-5, 800, 200, -1, cond(LT(X,0), assign(F,-X), assign(F,X))) result} \end{paste}\end{patch} \begin{patch}{nagLinkUsagePagePatch1} \begin{paste}{nagLinkUsagePageFull1}{nagLinkUsagePageEmpty1} \pastebutton{nagLinkUsagePageFull1}{\hidepaste} \tab{5}\spadcommand{answer:=c05adf(3.0,4.0,1.0e-5,0.0,-1,sin(X)::ASP1(F))\bound{answer }} \indentrel{3}\begin{verbatim} (1) [ifail: Integer,x: DoubleFloat] Type: Result \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{nagLinkUsagePageEmpty1} \begin{paste}{nagLinkUsagePageEmpty1}{nagLinkUsagePagePatch1} \pastebutton{nagLinkUsagePageEmpty1}{\showpaste} \tab{5}\spadcommand{answer:=c05adf(3.0,4.0,1.0e-5,0.0,-1,sin(X)::ASP1(F))\bound{answer }} \end{paste}\end{patch} \begin{patch}{nagLinkUsagePagePatch2} \begin{paste}{nagLinkUsagePageFull2}{nagLinkUsagePageEmpty2} \pastebutton{nagLinkUsagePageFull2}{\hidepaste} \tab{5}\spadcommand{answer . x\free{answer }} \indentrel{3}\begin{verbatim} (2) 3.14159265545896 Type: DoubleFloat \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{nagLinkUsagePageEmpty2} \begin{paste}{nagLinkUsagePageEmpty2}{nagLinkUsagePagePatch2} \pastebutton{nagLinkUsagePageEmpty2}{\showpaste} \tab{5}\spadcommand{answer . x\free{answer }} \end{paste}\end{patch} \begin{patch}{nagLinkUsagePagePatch3} \begin{paste}{nagLinkUsagePageFull3}{nagLinkUsagePageEmpty3} \pastebutton{nagLinkUsagePageFull3}{\hidepaste} \tab{5}\spadcommand{answer . ifail\free{answer }} \indentrel{3}\begin{verbatim} (3) 0 Type: Integer \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{nagLinkUsagePageEmpty3} \begin{paste}{nagLinkUsagePageEmpty3}{nagLinkUsagePagePatch3} \pastebutton{nagLinkUsagePageEmpty3}{\showpaste} \tab{5}\spadcommand{answer . ifail\free{answer }} \end{paste}\end{patch} \begin{patch}{nagLinkUsagePagePatch4} \begin{paste}{nagLinkUsagePageFull4}{nagLinkUsagePageEmpty4} \pastebutton{nagLinkUsagePageFull4}{\hidepaste} \tab{5}\spadcommand{answer "x"\free{answer }} \indentrel{3}\begin{verbatim} (4) 3.14159265545896 Type: DoubleFloat \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{nagLinkUsagePageEmpty4} \begin{paste}{nagLinkUsagePageEmpty4}{nagLinkUsagePagePatch4} \pastebutton{nagLinkUsagePageEmpty4}{\showpaste} \tab{5}\spadcommand{answer "x"\free{answer }} \end{paste}\end{patch} \begin{patch}{nagLinkUsagePagePatch5} \begin{paste}{nagLinkUsagePageFull5}{nagLinkUsagePageEmpty5} \pastebutton{nagLinkUsagePageFull5}{\hidepaste} \tab{5}\spadcommand{)read c05adf.input} \indentrel{3}\begin{verbatim} (1) true Type: Boolean (2) true Type: Boolean (3) F Type: Asp1 F (4) 0.0 Type: DoubleFloat (5) 1.0 Type: DoubleFloat (6) 1.0e-05 Type: DoubleFloat (7) 0.0 Type: DoubleFloat (8) [ifail: 0,x: 0.567143306604963] Type: Result \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{nagLinkUsagePageEmpty5} \begin{paste}{nagLinkUsagePageEmpty5}{nagLinkUsagePagePatch5} \pastebutton{nagLinkUsagePageEmpty5}{\showpaste} \tab{5}\spadcommand{)read c05adf.input} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch1} \begin{paste}{generalFortranPageFull1}{generalFortranPageEmpty1} \pastebutton{generalFortranPageFull1}{\hidepaste} \tab{5}\spadcommand{)set fortran precision} \indentrel{3}\begin{verbatim} \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty1} \begin{paste}{generalFortranPageEmpty1}{generalFortranPagePatch1} \pastebutton{generalFortranPageEmpty1}{\showpaste} \tab{5}\spadcommand{)set fortran precision} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch2} \begin{paste}{generalFortranPageFull2}{generalFortranPageEmpty2} \pastebutton{generalFortranPageFull2}{\hidepaste} \tab{5}\spadcommand{m := matrix [[1,2,3],[4,5,6]]\bound{m }} \indentrel{3}\begin{verbatim} Ú1 2 3¿ (1) ³ ³ À4 5 6Ù Type: Matrix Integer \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty2} \begin{paste}{generalFortranPageEmpty2}{generalFortranPagePatch2} \pastebutton{generalFortranPageEmpty2}{\showpaste} \tab{5}\spadcommand{m := matrix [[1,2,3],[4,5,6]]\bound{m }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch3} \begin{paste}{generalFortranPageFull3}{generalFortranPageEmpty3} \pastebutton{generalFortranPageFull3}{\hidepaste} \tab{5}\spadcommand{fortranLiteralLine concat ["C The Matrix has ", nrows(m)::String, " rows and ", ncols(m)::String, " columns"]\free{m }} \indentrel{3}\begin{verbatim} Type: Void \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty3} \begin{paste}{generalFortranPageEmpty3}{generalFortranPagePatch3} \pastebutton{generalFortranPageEmpty3}{\showpaste} \tab{5}\spadcommand{fortranLiteralLine concat ["C The Matrix has ", nrows(m)::String, " rows and ", ncols(m)::String, " columns"]\free{m }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch4} \begin{paste}{generalFortranPageFull4}{generalFortranPageEmpty4} \pastebutton{generalFortranPageFull4}{\hidepaste} \tab{5}\spadcommand{fortranLiteral "C The Matrix has "} \indentrel{3}\begin{verbatim} Type: Void \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty4} \begin{paste}{generalFortranPageEmpty4}{generalFortranPagePatch4} \pastebutton{generalFortranPageEmpty4}{\showpaste} \tab{5}\spadcommand{fortranLiteral "C The Matrix has "} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch5} \begin{paste}{generalFortranPageFull5}{generalFortranPageEmpty5} \pastebutton{generalFortranPageFull5}{\hidepaste} \tab{5}\spadcommand{fortranLiteral(nrows(m)::String)} \indentrel{3}\begin{verbatim} Type: Void \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty5} \begin{paste}{generalFortranPageEmpty5}{generalFortranPagePatch5} \pastebutton{generalFortranPageEmpty5}{\showpaste} \tab{5}\spadcommand{fortranLiteral(nrows(m)::String)} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch6} \begin{paste}{generalFortranPageFull6}{generalFortranPageEmpty6} \pastebutton{generalFortranPageFull6}{\hidepaste} \tab{5}\spadcommand{fortranLiteral " rows and "} \indentrel{3}\begin{verbatim} Type: Void \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty6} \begin{paste}{generalFortranPageEmpty6}{generalFortranPagePatch6} \pastebutton{generalFortranPageEmpty6}{\showpaste} \tab{5}\spadcommand{fortranLiteral " rows and "} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch7} \begin{paste}{generalFortranPageFull7}{generalFortranPageEmpty7} \pastebutton{generalFortranPageFull7}{\hidepaste} \tab{5}\spadcommand{fortranLiteral(ncols(m)::String)\free{m }} \indentrel{3}\begin{verbatim} Type: Void \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty7} \begin{paste}{generalFortranPageEmpty7}{generalFortranPagePatch7} \pastebutton{generalFortranPageEmpty7}{\showpaste} \tab{5}\spadcommand{fortranLiteral(ncols(m)::String)\free{m }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch8} \begin{paste}{generalFortranPageFull8}{generalFortranPageEmpty8} \pastebutton{generalFortranPageFull8}{\hidepaste} \tab{5}\spadcommand{fortranLiteral " columns"} \indentrel{3}\begin{verbatim} Type: Void \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty8} \begin{paste}{generalFortranPageEmpty8}{generalFortranPagePatch8} \pastebutton{generalFortranPageEmpty8}{\showpaste} \tab{5}\spadcommand{fortranLiteral " columns"} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch9} \begin{paste}{generalFortranPageFull9}{generalFortranPageEmpty9} \pastebutton{generalFortranPageFull9}{\hidepaste} \tab{5}\spadcommand{fortranCarriageReturn()} \indentrel{3}\begin{verbatim} Type: Void \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty9} \begin{paste}{generalFortranPageEmpty9}{generalFortranPagePatch9} \pastebutton{generalFortranPageEmpty9}{\showpaste} \tab{5}\spadcommand{fortranCarriageReturn()} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch10} \begin{paste}{generalFortranPageFull10}{generalFortranPageEmpty10} \pastebutton{generalFortranPageFull10}{\hidepaste} \tab{5}\spadcommand{topFortranOutputStack()} \indentrel{3}\begin{verbatim} (9) "CONSOLE" Type: String \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty10} \begin{paste}{generalFortranPageEmpty10}{generalFortranPagePatch10} \pastebutton{generalFortranPageEmpty10}{\showpaste} \tab{5}\spadcommand{topFortranOutputStack()} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch11} \begin{paste}{generalFortranPageFull11}{generalFortranPageEmpty11} \pastebutton{generalFortranPageFull11}{\hidepaste} \tab{5}\spadcommand{type:=construct(real,[i,10],false)$FortranType} \indentrel{3}\begin{verbatim} (10) REAL (i,10) Type: FortranType \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty11} \begin{paste}{generalFortranPageEmpty11}{generalFortranPagePatch11} \pastebutton{generalFortranPageEmpty11}{\showpaste} \tab{5}\spadcommand{type:=construct(real,[i,10],false)$FortranType} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch12} \begin{paste}{generalFortranPageFull12}{generalFortranPageEmpty12} \pastebutton{generalFortranPageFull12}{\hidepaste} \tab{5}\spadcommand{type:=[real,[i,10],false]$FortranType\bound{type }} \indentrel{3}\begin{verbatim} (11) REAL (i,10) Type: FortranType \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty12} \begin{paste}{generalFortranPageEmpty12}{generalFortranPagePatch12} \pastebutton{generalFortranPageEmpty12}{\showpaste} \tab{5}\spadcommand{type:=[real,[i,10],false]$FortranType\bound{type }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch13} \begin{paste}{generalFortranPageFull13}{generalFortranPageEmpty13} \pastebutton{generalFortranPageFull13}{\hidepaste} \tab{5}\spadcommand{scalarTypeOf type\free{type }} \indentrel{3}\begin{verbatim} (12) REAL Type: Union(fst: FortranScalarType,...) \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty13} \begin{paste}{generalFortranPageEmpty13}{generalFortranPagePatch13} \pastebutton{generalFortranPageEmpty13}{\showpaste} \tab{5}\spadcommand{scalarTypeOf type\free{type }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch14} \begin{paste}{generalFortranPageFull14}{generalFortranPageEmpty14} \pastebutton{generalFortranPageFull14}{\hidepaste} \tab{5}\spadcommand{dimensionsOf type\free{type }} \indentrel{3}\begin{verbatim} (13) [i,10] Type: List Polynomial Integer \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty14} \begin{paste}{generalFortranPageEmpty14}{generalFortranPagePatch14} \pastebutton{generalFortranPageEmpty14}{\showpaste} \tab{5}\spadcommand{dimensionsOf type\free{type }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch15} \begin{paste}{generalFortranPageFull15}{generalFortranPageEmpty15} \pastebutton{generalFortranPageFull15}{\hidepaste} \tab{5}\spadcommand{external? type\free{type }} \indentrel{3}\begin{verbatim} (14) false Type: Boolean \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty15} \begin{paste}{generalFortranPageEmpty15}{generalFortranPagePatch15} \pastebutton{generalFortranPageEmpty15}{\showpaste} \tab{5}\spadcommand{external? type\free{type }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch16} \begin{paste}{generalFortranPageFull16}{generalFortranPageEmpty16} \pastebutton{generalFortranPageFull16}{\hidepaste} \tab{5}\spadcommand{fortranLogical()} \indentrel{3}\begin{verbatim} (15) LOGICAL Type: FortranType \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty16} \begin{paste}{generalFortranPageEmpty16}{generalFortranPagePatch16} \pastebutton{generalFortranPageEmpty16}{\showpaste} \tab{5}\spadcommand{fortranLogical()} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch17} \begin{paste}{generalFortranPageFull17}{generalFortranPageEmpty17} \pastebutton{generalFortranPageFull17}{\hidepaste} \tab{5}\spadcommand{construct(integer,[],true)$FortranType} \indentrel{3}\begin{verbatim} (16) EXTERNAL INTEGER Type: FortranType \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty17} \begin{paste}{generalFortranPageEmpty17}{generalFortranPagePatch17} \pastebutton{generalFortranPageEmpty17}{\showpaste} \tab{5}\spadcommand{construct(integer,[],true)$FortranType} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch18} \begin{paste}{generalFortranPageFull18}{generalFortranPageEmpty18} \pastebutton{generalFortranPageFull18}{\hidepaste} \tab{5}\spadcommand{symbols := empty()$SymbolTable\bound{symbols }} \indentrel{3}\begin{verbatim} (17) table() Type: SymbolTable \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty18} \begin{paste}{generalFortranPageEmpty18}{generalFortranPagePatch18} \pastebutton{generalFortranPageEmpty18}{\showpaste} \tab{5}\spadcommand{symbols := empty()$SymbolTable\bound{symbols }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch19} \begin{paste}{generalFortranPageFull19}{generalFortranPageEmpty19} \pastebutton{generalFortranPageFull19}{\hidepaste} \tab{5}\spadcommand{declare!(X,fortranReal(),symbols)\free{symbols }} \indentrel{3}\begin{verbatim} (18) REAL Type: FortranType \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty19} \begin{paste}{generalFortranPageEmpty19}{generalFortranPagePatch19} \pastebutton{generalFortranPageEmpty19}{\showpaste} \tab{5}\spadcommand{declare!(X,fortranReal(),symbols)\free{symbols }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch20} \begin{paste}{generalFortranPageFull20}{generalFortranPageEmpty20} \pastebutton{generalFortranPageFull20}{\hidepaste} \tab{5}\spadcommand{declare!(M,construct(real,[i,j],false)$FortranType,symbols)\free{symbols }} \indentrel{3}\begin{verbatim} (19) REAL (i,j) Type: FortranType \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty20} \begin{paste}{generalFortranPageEmpty20}{generalFortranPagePatch20} \pastebutton{generalFortranPageEmpty20}{\showpaste} \tab{5}\spadcommand{declare!(M,construct(real,[i,j],false)$FortranType,symbols)\free{symbols }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch21} \begin{paste}{generalFortranPageFull21}{generalFortranPageEmpty21} \pastebutton{generalFortranPageFull21}{\hidepaste} \tab{5}\spadcommand{declare!([i,j],fortranInteger(),symbols)\free{symbols }} \indentrel{3}\begin{verbatim} (20) INTEGER Type: FortranType \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty21} \begin{paste}{generalFortranPageEmpty21}{generalFortranPagePatch21} \pastebutton{generalFortranPageEmpty21}{\showpaste} \tab{5}\spadcommand{declare!([i,j],fortranInteger(),symbols)\free{symbols }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch22} \begin{paste}{generalFortranPageFull22}{generalFortranPageEmpty22} \pastebutton{generalFortranPageFull22}{\hidepaste} \tab{5}\spadcommand{symbols\free{symbols }} \indentrel{3}\begin{verbatim} (21) table(X= REAL,M= REAL ,i= INTEGER,j= INTEGER) (i,j) Type: SymbolTable \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty22} \begin{paste}{generalFortranPageEmpty22}{generalFortranPagePatch22} \pastebutton{generalFortranPageEmpty22}{\showpaste} \tab{5}\spadcommand{symbols\free{symbols }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch23} \begin{paste}{generalFortranPageFull23}{generalFortranPageEmpty23} \pastebutton{generalFortranPageFull23}{\hidepaste} \tab{5}\spadcommand{fortranTypeOf(i,symbols)\free{symbols }} \indentrel{3}\begin{verbatim} (22) INTEGER Type: FortranType \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty23} \begin{paste}{generalFortranPageEmpty23}{generalFortranPagePatch23} \pastebutton{generalFortranPageEmpty23}{\showpaste} \tab{5}\spadcommand{fortranTypeOf(i,symbols)\free{symbols }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch24} \begin{paste}{generalFortranPageFull24}{generalFortranPageEmpty24} \pastebutton{generalFortranPageFull24}{\hidepaste} \tab{5}\spadcommand{typeList(real,symbols)\free{symbols }} \indentrel{3}\begin{verbatim} (23) [X,[M,i,j]] Type: List Union(name: Symbol,bounds: List Union(S: Symbol,P: Polynomial Integer)) \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty24} \begin{paste}{generalFortranPageEmpty24}{generalFortranPagePatch24} \pastebutton{generalFortranPageEmpty24}{\showpaste} \tab{5}\spadcommand{typeList(real,symbols)\free{symbols }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch25} \begin{paste}{generalFortranPageFull25}{generalFortranPageEmpty25} \pastebutton{generalFortranPageFull25}{\hidepaste} \tab{5}\spadcommand{printTypes symbols\free{symbols }} \indentrel{3}\begin{verbatim} Type: Void \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty25} \begin{paste}{generalFortranPageEmpty25}{generalFortranPagePatch25} \pastebutton{generalFortranPageEmpty25}{\showpaste} \tab{5}\spadcommand{printTypes symbols\free{symbols }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch26} \begin{paste}{generalFortranPageFull26}{generalFortranPageEmpty26} \pastebutton{generalFortranPageFull26}{\hidepaste} \tab{5}\spadcommand{newSubProgram F} \indentrel{3}\begin{verbatim} Type: Void \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty26} \begin{paste}{generalFortranPageEmpty26}{generalFortranPagePatch26} \pastebutton{generalFortranPageEmpty26}{\showpaste} \tab{5}\spadcommand{newSubProgram F} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch27} \begin{paste}{generalFortranPageFull27}{generalFortranPageEmpty27} \pastebutton{generalFortranPageFull27}{\hidepaste} \tab{5}\spadcommand{endSubProgram()} \indentrel{3}\begin{verbatim} (26) MAIN Type: Symbol \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty27} \begin{paste}{generalFortranPageEmpty27}{generalFortranPagePatch27} \pastebutton{generalFortranPageEmpty27}{\showpaste} \tab{5}\spadcommand{endSubProgram()} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch28} \begin{paste}{generalFortranPageFull28}{generalFortranPageEmpty28} \pastebutton{generalFortranPageFull28}{\hidepaste} \tab{5}\spadcommand{newSubProgram F\bound{forPleasure }} \indentrel{3}\begin{verbatim} Type: Void \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty28} \begin{paste}{generalFortranPageEmpty28}{generalFortranPagePatch28} \pastebutton{generalFortranPageEmpty28}{\showpaste} \tab{5}\spadcommand{newSubProgram F\bound{forPleasure }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch29} \begin{paste}{generalFortranPageFull29}{generalFortranPageEmpty29} \pastebutton{generalFortranPageFull29}{\hidepaste} \tab{5}\spadcommand{argumentList!(F,[X])\free{forPleasure }} \indentrel{3}\begin{verbatim} Type: Void \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty29} \begin{paste}{generalFortranPageEmpty29}{generalFortranPagePatch29} \pastebutton{generalFortranPageEmpty29}{\showpaste} \tab{5}\spadcommand{argumentList!(F,[X])\free{forPleasure }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch30} \begin{paste}{generalFortranPageFull30}{generalFortranPageEmpty30} \pastebutton{generalFortranPageFull30}{\hidepaste} \tab{5}\spadcommand{returnType!(F,real)\free{forPleasure }} \indentrel{3}\begin{verbatim} Type: Void \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty30} \begin{paste}{generalFortranPageEmpty30}{generalFortranPagePatch30} \pastebutton{generalFortranPageEmpty30}{\showpaste} \tab{5}\spadcommand{returnType!(F,real)\free{forPleasure }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch31} \begin{paste}{generalFortranPageFull31}{generalFortranPageEmpty31} \pastebutton{generalFortranPageFull31}{\hidepaste} \tab{5}\spadcommand{declare!(X,fortranReal(),F)\free{forPleasure }} \indentrel{3}\begin{verbatim} (30) REAL Type: FortranType \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty31} \begin{paste}{generalFortranPageEmpty31}{generalFortranPagePatch31} \pastebutton{generalFortranPageEmpty31}{\showpaste} \tab{5}\spadcommand{declare!(X,fortranReal(),F)\free{forPleasure }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch32} \begin{paste}{generalFortranPageFull32}{generalFortranPageEmpty32} \pastebutton{generalFortranPageFull32}{\hidepaste} \tab{5}\spadcommand{printHeader F\free{forPleasure }} \indentrel{3}\begin{verbatim} Type: Void \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty32} \begin{paste}{generalFortranPageEmpty32}{generalFortranPagePatch32} \pastebutton{generalFortranPageEmpty32}{\showpaste} \tab{5}\spadcommand{printHeader F\free{forPleasure }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch33} \begin{paste}{generalFortranPageFull33}{generalFortranPageEmpty33} \pastebutton{generalFortranPageFull33}{\hidepaste} \tab{5}\spadcommand{LT(x,y)} \indentrel{3}\begin{verbatim} (32) x < y Type: Switch \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty33} \begin{paste}{generalFortranPageEmpty33}{generalFortranPagePatch33} \pastebutton{generalFortranPageEmpty33}{\showpaste} \tab{5}\spadcommand{LT(x,y)} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch34} \begin{paste}{generalFortranPageFull34}{generalFortranPageEmpty34} \pastebutton{generalFortranPageFull34}{\hidepaste} \tab{5}\spadcommand{c := cond(LT(X,Y),assign(F,X),cond(GT(Y,Z),assign(F,Y),assign(F,Z)))\bound{c }} \indentrel{3}\begin{verbatim} (33) conditional Type: FortranCode \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty34} \begin{paste}{generalFortranPageEmpty34}{generalFortranPagePatch34} \pastebutton{generalFortranPageEmpty34}{\showpaste} \tab{5}\spadcommand{c := cond(LT(X,Y),assign(F,X),cond(GT(Y,Z),assign(F,Y),assign(F,Z)))\bound{c }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch35} \begin{paste}{generalFortranPageFull35}{generalFortranPageEmpty35} \pastebutton{generalFortranPageFull35}{\hidepaste} \tab{5}\spadcommand{printCode c\free{c }} \indentrel{3}\begin{verbatim} Type: Void \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty35} \begin{paste}{generalFortranPageEmpty35}{generalFortranPagePatch35} \pastebutton{generalFortranPageEmpty35}{\showpaste} \tab{5}\spadcommand{printCode c\free{c }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch36} \begin{paste}{generalFortranPageFull36}{generalFortranPageEmpty36} \pastebutton{generalFortranPageFull36}{\hidepaste} \tab{5}\spadcommand{symbols := empty()$SymbolTable\bound{symbols }} \indentrel{3}\begin{verbatim} (35) table() Type: SymbolTable \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty36} \begin{paste}{generalFortranPageEmpty36}{generalFortranPagePatch36} \pastebutton{generalFortranPageEmpty36}{\showpaste} \tab{5}\spadcommand{symbols := empty()$SymbolTable\bound{symbols }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch37} \begin{paste}{generalFortranPageFull37}{generalFortranPageEmpty37} \pastebutton{generalFortranPageFull37}{\hidepaste} \tab{5}\spadcommand{declare!([X,Y],fortranReal(),symbols)\free{symbols }} \indentrel{3}\begin{verbatim} (36) REAL Type: FortranType \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty37} \begin{paste}{generalFortranPageEmpty37}{generalFortranPagePatch37} \pastebutton{generalFortranPageEmpty37}{\showpaste} \tab{5}\spadcommand{declare!([X,Y],fortranReal(),symbols)\free{symbols }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch38} \begin{paste}{generalFortranPageFull38}{generalFortranPageEmpty38} \pastebutton{generalFortranPageFull38}{\hidepaste} \tab{5}\spadcommand{FP := FortranProgram(F,real,[X,Y],symbols)\free{symbols }\bound{FP }} \indentrel{3}\begin{verbatim} (37) FortranProgram(F,REAL,[X,Y],table(...,...)) Type: Domain \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty38} \begin{paste}{generalFortranPageEmpty38}{generalFortranPagePatch38} \pastebutton{generalFortranPageEmpty38}{\showpaste} \tab{5}\spadcommand{FP := FortranProgram(F,real,[X,Y],symbols)\free{symbols }\bound{FP }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch39} \begin{paste}{generalFortranPageFull39}{generalFortranPageEmpty39} \pastebutton{generalFortranPageFull39}{\hidepaste} \tab{5}\spadcommand{asp := X*sin(Y)\bound{asp }} \indentrel{3}\begin{verbatim} (38) X sin(Y) Type: Expression Integer \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty39} \begin{paste}{generalFortranPageEmpty39}{generalFortranPagePatch39} \pastebutton{generalFortranPageEmpty39}{\showpaste} \tab{5}\spadcommand{asp := X*sin(Y)\bound{asp }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch40} \begin{paste}{generalFortranPageFull40}{generalFortranPageEmpty40} \pastebutton{generalFortranPageFull40}{\hidepaste} \tab{5}\spadcommand{outputAsFortran(asp::FP)\free{FP asp }} \indentrel{3}\begin{verbatim} Type: Void \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty40} \begin{paste}{generalFortranPageEmpty40}{generalFortranPagePatch40} \pastebutton{generalFortranPageEmpty40}{\showpaste} \tab{5}\spadcommand{outputAsFortran(asp::FP)\free{FP asp }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch41} \begin{paste}{generalFortranPageFull41}{generalFortranPageEmpty41} \pastebutton{generalFortranPageFull41}{\hidepaste} \tab{5}\spadcommand{declare!(Z,fortranReal(),symbols)\free{symbols }\bound{Z }} \indentrel{3}\begin{verbatim} (40) REAL Type: FortranType \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty41} \begin{paste}{generalFortranPageEmpty41}{generalFortranPagePatch41} \pastebutton{generalFortranPageEmpty41}{\showpaste} \tab{5}\spadcommand{declare!(Z,fortranReal(),symbols)\free{symbols }\bound{Z }} \end{paste}\end{patch} \begin{patch}{generalFortranPagePatch42} \begin{paste}{generalFortranPageFull42}{generalFortranPageEmpty42} \pastebutton{generalFortranPageFull42}{\hidepaste} \tab{5}\spadcommand{outputAsFortran([c,returns()]::FP)\free{FP c Z }} \indentrel{3}\begin{verbatim} Type: Void \end{verbatim} \indentrel{-3}\end{paste}\end{patch} \begin{patch}{generalFortranPageEmpty42} \begin{paste}{generalFortranPageEmpty42}{generalFortranPagePatch42} \pastebutton{generalFortranPageEmpty42}{\showpaste} \tab{5}\spadcommand{outputAsFortran([c,returns()]::FP)\free{FP c Z }} \end{paste}\end{patch}