Download præsentationen
Præsentation er lastning. Vent venligst
Offentliggjort afRasmus Kristoffersen Redigeret for ca. et år siden
1
Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.1 Syntaksbeskrivelse Syntaksdiagrammer og EBNF-notation
2
Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.2 Emner Syntaks og semantik Syntaktiske entiteter og syntaktiske kategorier Syntaksdiagrammer EBNF-notation Rekursion i syntaksbeskrivelser
3
Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.3 Syntaks og semantik (1) På dansk kombinerer vi bogstaver til ord, ord og skilletegn til sætninger, sætninger til afsnit,... For at resultatet skal blive acceptabelt, er det en forudsætning at vi benytter ord der er i sproget konstruerer meningsfyldte sætninger –grammatisk –indholdsmæssigt
4
Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.4 Syntaks og semantik (2) Syntaks form / grammatik Semantik indhold / betydning Korrekthedsniveauer syntaktisk korrekthed semantisk korrekthed logisk korrekthed (sandt)
5
Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.5 Korrekthedsniveauer (1) En mand stor hus sø Farveløse grønne ideer sover rasende Jordnødden åd elefanten Elefanten åd jordnødden Min bil er rød Det er torsdag i dag
6
Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.6 Korrekthedsniveauer (2) Syntaktisk korrekt Semantisk korrekt Logisk korrekt NejJa Nej JaNej
7
Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.7 Tvetydighed Han elskede pigen på banegården Korrekt at lade Arnesen skyde Hun var skidefuld og på rulleskøjter
8
Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.8 Demonstration Hornorkester fanebærerdemonstrant Hornorkester trompetist basunist t t b t f f d t b t f t f t b d t t b t b f d d
9
Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.9 Syntaksdiagrammer (1) Et syntaksdiagram er et navngivent diagram bestående af en række ‘pile’ afbrudt af symboler og af navne på syntaksdiagrammer. Et syntaksdiagram definerer alle de følger af symboler som opnås ved at gennemløbe det i pilenes retning. Symboler kaldes syntaktiske entiteter; diagrammer kaldes syntaktiske kategorier.
10
Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.10 Syntaksdiagrammer (2) Syntaktiske entiteter (symboler) Syntaktiske kategorier (diagrammer) Pile
11
Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.11 EBNF-notation for picodansk Sætning ::= Grundled Udsagnsled Genstandsled Grundled ::= “en” [ Adjektivliste ] Navneord Udsagnsled ::= spiser” | “kører” | “løber” | “skovler” Genstandsled ::= Grundled Adjektivliste ::= Adjektiv { “,” Adjektiv } Adjektiv ::= “stor” | “rød” | “tung” | “mager” | “udspekuleret” Navneord ::= “mand” | “bil” | “hest” | “skovl”
12
Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.12 EBNF-notation Syntaktiske entiteter Syntaktisk kategori Sammenstilling (efter hinanden) Valg 0 eller 1 forekomst af... 0 eller mange forekomster af... “...” Navn | [... ] {... }
13
Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.13 Præcedensregler 1. (sammenstilling) 2. | (valg) Som sædvanligt kan parenteser bruges til at ‘overrule’ præcedensreglerne. seq ::= “a” | “b” [ “c” ] seq ::= (“a” | “b”) [ “c” ]
14
Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.14 EBNF og syntaksdiagrammer “...” Navn x y x | y [ x ] { y } xy x y x x
15
Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.15 E ::= E op E | “(“ E “)” | Tal op ::= “+” | “-” | “’” | “/” Tal ::= “0” | “1” | “2” | “3” | “4” | “5” | “6” | “7” | “8” | “9” Regneudtryk og parsetræ 3 + 7 * 9 E EEop EE * +TT 37 9
Lignende præsentationer
© 2024 SlidePlayer.dk Inc.
All rights reserved.