SlideShare a Scribd company logo
1 of 9
Software Design and Development


Meta Languages in SDD
Contents
Course Specifications




       1. BNF


       2. EBNF


       3. Railroad diagram


       4. examples


      NSW BOS Course Specifications
BNF
                   Contents




Abbreviation for Backus-Naur form.

BNF is a metalanguage used to define the syntax of a programming language.


It uses the following symbols:
BNF
                                                   Contents                                                                                                              examples




This translates into English as:

                            •A postal address consists of a name-part, followed by a street-address part, followed by a zip-code part.
                            •A name-part consists of either: a personal-part followed by a last name followed by an optional "jr-part" (Jr., Sr., or dynastic number) and end-of-line, or a personal part
                            followed by a name part (this rule illustrates the use of recursion in BNFs, covering the case of people who use multiple first and middle names and/or initials).
                            •A personal-part consists of either a first name or an initial followed by a dot.
                            •A street address consists of a house number, followed by a street name, followed by an optional apartment specifier, followed by an end-of-line.
                            •A zip-part consists of a town-name, followed by a comma, followed by a state code, followed by a ZIP-code followed by an end-of-line.

Note that many things (such as the format of a first-name, apartment specifier, ZIP-code, and Roman numeral) are left unspecified here.
If necessary, they may be described using additional BNF rules.
EBNF
                   Contents




Abbreviation for extended Backus-Naur form.
EBNF is a metalanguage used to define the syntax of a programming language.

In this extended form the following symbols are used:




                                            Interpretation:
                                            An identifier is defined to be a Letter followed by one or more
                                            Letters or Digits.
                                            Letter is a non-terminal symbol and is defined elsewhere, and
                                            Digit is another non-terminal symbol defined elsewhere.
EBNF
Contents    example
Railroad diagram
                     Contents




                  This is an alternative, graphical method used to
                   define the syntax of a programming language.

          • Rectangles are used to enclose non-terminal symbols
          (that is, symbols that will be further defined).
          • Circles or rounded rectangles are used to enclose terminal symbols.

These elements are linked by paths to show all legal combinations.

          1.   By starting at the left-hand side of the diagram and
          2.   tracing any path in a forward direction
          3.   to reach the right-hand side of the diagram,
          4.   a syntactically correct construct will be covered.


(‘Railroad’ in this context means a branch in the diagram is legal if it is treated as a set of
points in a railroad layout and a train can take the branch in a forward direction only).
Railroad diagram
Contents
                       example
BNF, EBNF, Railroad Diagram
                                            example
Contents




                         One possible set of syntax diagrams
                         for this grammar is:

More Related Content

Viewers also liked

Introduction to natural semanticsmetalanguage
Introduction to natural semanticsmetalanguageIntroduction to natural semanticsmetalanguage
Introduction to natural semanticsmetalanguage
Gustina Savhira
 
Lecture 2 Differences between Writing & Speech
Lecture 2 Differences between Writing & SpeechLecture 2 Differences between Writing & Speech
Lecture 2 Differences between Writing & Speech
Salina Saharudin
 
The Importance of Grammar in English Acquisition
The Importance of Grammar in English AcquisitionThe Importance of Grammar in English Acquisition
The Importance of Grammar in English Acquisition
Ali Karim
 
Research report traditional grammar vs functional grammar and teaching of gr...
Research report traditional grammar vs functional grammar and teaching of  gr...Research report traditional grammar vs functional grammar and teaching of  gr...
Research report traditional grammar vs functional grammar and teaching of gr...
Rai Shoaib Ali
 
Grammar II-2014 prescriptive vs Descriptive Grammar
Grammar II-2014 prescriptive vs Descriptive GrammarGrammar II-2014 prescriptive vs Descriptive Grammar
Grammar II-2014 prescriptive vs Descriptive Grammar
Serena Luna
 

Viewers also liked (20)

Upper Primary B - Metalanguage
Upper Primary B - MetalanguageUpper Primary B - Metalanguage
Upper Primary B - Metalanguage
 
Introduction to natural semanticsmetalanguage
Introduction to natural semanticsmetalanguageIntroduction to natural semanticsmetalanguage
Introduction to natural semanticsmetalanguage
 
Modern english grammar
Modern english grammarModern english grammar
Modern english grammar
 
Lecture 2 Differences between Writing & Speech
Lecture 2 Differences between Writing & SpeechLecture 2 Differences between Writing & Speech
Lecture 2 Differences between Writing & Speech
 
Language and Meta-language for Enterprise Architecture
Language and Meta-language for Enterprise ArchitectureLanguage and Meta-language for Enterprise Architecture
Language and Meta-language for Enterprise Architecture
 
The Importance of Grammar in English Acquisition
The Importance of Grammar in English AcquisitionThe Importance of Grammar in English Acquisition
The Importance of Grammar in English Acquisition
 
Modern ling
Modern lingModern ling
Modern ling
 
Distributed systems vs compositionality
Distributed systems vs compositionalityDistributed systems vs compositionality
Distributed systems vs compositionality
 
Bytheway_Sexist_language_20090604
Bytheway_Sexist_language_20090604Bytheway_Sexist_language_20090604
Bytheway_Sexist_language_20090604
 
sentence meaning is different from speaker's meaning.-news headlines from dif...
sentence meaning is different from speaker's meaning.-news headlines from dif...sentence meaning is different from speaker's meaning.-news headlines from dif...
sentence meaning is different from speaker's meaning.-news headlines from dif...
 
Functional grammar
Functional grammarFunctional grammar
Functional grammar
 
Research report traditional grammar vs functional grammar and teaching of gr...
Research report traditional grammar vs functional grammar and teaching of  gr...Research report traditional grammar vs functional grammar and teaching of  gr...
Research report traditional grammar vs functional grammar and teaching of gr...
 
Speaking and Writing
Speaking and WritingSpeaking and Writing
Speaking and Writing
 
Language
LanguageLanguage
Language
 
Speech acts
Speech actsSpeech acts
Speech acts
 
Learning Grammar
Learning GrammarLearning Grammar
Learning Grammar
 
Syntax analysis
Syntax analysisSyntax analysis
Syntax analysis
 
Functional Grammar
Functional GrammarFunctional Grammar
Functional Grammar
 
Syntax analysis
Syntax analysisSyntax analysis
Syntax analysis
 
Grammar II-2014 prescriptive vs Descriptive Grammar
Grammar II-2014 prescriptive vs Descriptive GrammarGrammar II-2014 prescriptive vs Descriptive Grammar
Grammar II-2014 prescriptive vs Descriptive Grammar
 

More from Liam Dunphy

Organising and dss steps in designing a spreadsheet solution
Organising and dss   steps in designing a spreadsheet solutionOrganising and dss   steps in designing a spreadsheet solution
Organising and dss steps in designing a spreadsheet solution
Liam Dunphy
 

More from Liam Dunphy (20)

Butterfly Struggles - An inspirational life lesson
Butterfly Struggles - An inspirational life lessonButterfly Struggles - An inspirational life lesson
Butterfly Struggles - An inspirational life lesson
 
Tm hills scarytasla-ming
Tm hills scarytasla-mingTm hills scarytasla-ming
Tm hills scarytasla-ming
 
Creative learning spaces
Creative learning spacesCreative learning spaces
Creative learning spaces
 
#ccGlobal for cesimeet
#ccGlobal for cesimeet#ccGlobal for cesimeet
#ccGlobal for cesimeet
 
Tm sydney north - collaboration
Tm sydney north - collaborationTm sydney north - collaboration
Tm sydney north - collaboration
 
Training presentation outlook 2007 manage your mailbox 3-move or copy message...
Training presentation outlook 2007 manage your mailbox 3-move or copy message...Training presentation outlook 2007 manage your mailbox 3-move or copy message...
Training presentation outlook 2007 manage your mailbox 3-move or copy message...
 
Training presentation outlook 2007 manage your mailbox 2-understand your choi...
Training presentation outlook 2007 manage your mailbox 2-understand your choi...Training presentation outlook 2007 manage your mailbox 2-understand your choi...
Training presentation outlook 2007 manage your mailbox 2-understand your choi...
 
Mm expertise
Mm expertiseMm expertise
Mm expertise
 
Organising and dss steps in designing a spreadsheet solution
Organising and dss   steps in designing a spreadsheet solutionOrganising and dss   steps in designing a spreadsheet solution
Organising and dss steps in designing a spreadsheet solution
 
Programming Languages
Programming LanguagesProgramming Languages
Programming Languages
 
Algorithms
AlgorithmsAlgorithms
Algorithms
 
Algorithms2
Algorithms2Algorithms2
Algorithms2
 
Iteration
IterationIteration
Iteration
 
Representational Tools
Representational ToolsRepresentational Tools
Representational Tools
 
System Data Modelling Tools
System Data Modelling ToolsSystem Data Modelling Tools
System Data Modelling Tools
 
Communications Systems
Communications SystemsCommunications Systems
Communications Systems
 
Ipt Syllabus Changes Communications Systems
Ipt Syllabus Changes   Communications SystemsIpt Syllabus Changes   Communications Systems
Ipt Syllabus Changes Communications Systems
 
Ipt Syllabus Changes
Ipt Syllabus ChangesIpt Syllabus Changes
Ipt Syllabus Changes
 
Ipt Syllabus Changes Project Management
Ipt Syllabus Changes   Project ManagementIpt Syllabus Changes   Project Management
Ipt Syllabus Changes Project Management
 
Algorithms
AlgorithmsAlgorithms
Algorithms
 

Recently uploaded

Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
Chris Hunter
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
QucHHunhnh
 

Recently uploaded (20)

Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
Role Of Transgenic Animal In Target Validation-1.pptx
Role Of Transgenic Animal In Target Validation-1.pptxRole Of Transgenic Animal In Target Validation-1.pptx
Role Of Transgenic Animal In Target Validation-1.pptx
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural ResourcesEnergy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdf
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Food Chain and Food Web (Ecosystem) EVS, B. Pharmacy 1st Year, Sem-II
Food Chain and Food Web (Ecosystem) EVS, B. Pharmacy 1st Year, Sem-IIFood Chain and Food Web (Ecosystem) EVS, B. Pharmacy 1st Year, Sem-II
Food Chain and Food Web (Ecosystem) EVS, B. Pharmacy 1st Year, Sem-II
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 

Meta Languages

  • 1. Software Design and Development Meta Languages in SDD
  • 2. Contents Course Specifications 1. BNF 2. EBNF 3. Railroad diagram 4. examples NSW BOS Course Specifications
  • 3. BNF Contents Abbreviation for Backus-Naur form. BNF is a metalanguage used to define the syntax of a programming language. It uses the following symbols:
  • 4. BNF Contents examples This translates into English as: •A postal address consists of a name-part, followed by a street-address part, followed by a zip-code part. •A name-part consists of either: a personal-part followed by a last name followed by an optional "jr-part" (Jr., Sr., or dynastic number) and end-of-line, or a personal part followed by a name part (this rule illustrates the use of recursion in BNFs, covering the case of people who use multiple first and middle names and/or initials). •A personal-part consists of either a first name or an initial followed by a dot. •A street address consists of a house number, followed by a street name, followed by an optional apartment specifier, followed by an end-of-line. •A zip-part consists of a town-name, followed by a comma, followed by a state code, followed by a ZIP-code followed by an end-of-line. Note that many things (such as the format of a first-name, apartment specifier, ZIP-code, and Roman numeral) are left unspecified here. If necessary, they may be described using additional BNF rules.
  • 5. EBNF Contents Abbreviation for extended Backus-Naur form. EBNF is a metalanguage used to define the syntax of a programming language. In this extended form the following symbols are used: Interpretation: An identifier is defined to be a Letter followed by one or more Letters or Digits. Letter is a non-terminal symbol and is defined elsewhere, and Digit is another non-terminal symbol defined elsewhere.
  • 6. EBNF Contents example
  • 7. Railroad diagram Contents This is an alternative, graphical method used to define the syntax of a programming language. • Rectangles are used to enclose non-terminal symbols (that is, symbols that will be further defined). • Circles or rounded rectangles are used to enclose terminal symbols. These elements are linked by paths to show all legal combinations. 1. By starting at the left-hand side of the diagram and 2. tracing any path in a forward direction 3. to reach the right-hand side of the diagram, 4. a syntactically correct construct will be covered. (‘Railroad’ in this context means a branch in the diagram is legal if it is treated as a set of points in a railroad layout and a train can take the branch in a forward direction only).
  • 9. BNF, EBNF, Railroad Diagram example Contents One possible set of syntax diagrams for this grammar is: