Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Software Design and Development


Meta Languages in SDD
Contents
Course Specifications




       1. BNF


       2. EBNF


       3. Railroad diagram


       4. examples


    ...
BNF
                   Contents




Abbreviation for Backus-Naur form.

BNF is a metalanguage used to define the syntax of...
BNF
                                                   Contents                                                           ...
EBNF
                   Contents




Abbreviation for extended Backus-Naur form.
EBNF is a metalanguage used to define the...
EBNF
Contents    example
Railroad diagram
                     Contents




                  This is an alternative, graphical method used to
    ...
Railroad diagram
Contents
                       example
BNF, EBNF, Railroad Diagram
                                            example
Contents




                         One ...
Upcoming SlideShare
Loading in …5
×

Meta Languages

Metalanguages as described by the NSW BOS for the SDD syllabus. Explanations, syntax and examples for BNF, EBNF and Railroad diagrams.

Related Books

Free with a 30 day trial from Scribd

See all
  • Be the first to comment

  • Be the first to like this

Meta Languages

  1. 1. Software Design and Development Meta Languages in SDD
  2. 2. Contents Course Specifications 1. BNF 2. EBNF 3. Railroad diagram 4. examples NSW BOS Course Specifications
  3. 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. 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. 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. 6. EBNF Contents example
  7. 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).
  8. 8. Railroad diagram Contents example
  9. 9. BNF, EBNF, Railroad Diagram example Contents One possible set of syntax diagrams for this grammar is:

×