38 ProcedureHeading 39 Procedureldentification 40 FunctionHeading " = proce "pro{ "fun( . ['"" Identifier [FormaIParameterList] . ·jllre" Procedureldentifier. = 41 >n" Identifier [FormaIParameterList] ":" j.. ·.llIltType . 42 Functionldentification 43 FormalParameterList 44 = "func . '"" Functionldentifier. "(" FI 'mwlParameterSection { ";" h'lrl1lalParameterSection I Valuei'arameterSpecification I ")" . 45 FormalParameterSection = 46 47 48 VarilliJleParameterSpecification I Prot "dllraIParameterSpecification I Funt 'iollalParameterSpecification . 49 50------------------ 51 52 ValueParameterSpecification = 53 Identi/ierList ":" (Typeldentifier I 54 COl/formantArraySchema) . 55 VariableParameterSpecification = 56 "var" IdentifierList ":" (Typeldentifier I 57 Cl·.!/(JrmantArraySchema) . 58 ProceduralParameterSpecification = 59 Proce Il/reHeading . 60 FunctionalParameterSpecification = 61 Funcr ",rHeading . 62 ConformantArraySchema = PackciCtlnformantArraySchema I 63 Unpul·kedConformantArraySchema. 64 PackedConformantArraySchema = 65 "packed' ",lfray" "[" IndexTypeSpecification "]" 66 "of" Typeldentifier . 67 UnpackedConformantArraySchema = 68 "arra .... [" IndexTypeSpecification { ";" 69 70 71lndexTypeSpecification = 72 73----------------- 74 Ind, \'1~'peSpecification I "]" "of" ( TYi ddent~fier I ConformantArraySchema) . Ident/ i(',. .... " Identifier ":" OrdinalTypeldentifier. 75 CompoundStatement 76 = "beg;" 77 78 StatementSequence 79 Statement 80 81 SimpleStatement 82 Stat, II/I'll/Sequence "end" = StateflicllI {";" Statement I [Lab(/":" I ( SimpleStatement I StructuredStatement ) . = Empt.' 'itatement I AssignmentStatement I ProcedureStatement I GotoStatement. 

