SlideShare a Scribd company logo
1 of 27
Kelly Bauer Meta Languages
Why?	 Describes the syntax of a computer language Rules that govern the arrangement of elements in a language eg. The ran cat 		OR 		The cat ran
Why not just learn the language? Programming languages are very complex. You cant possibly know every way to do everything that you want.  The likelihood is that you won’t program in the language you learn.
Why not just learn the language? Programming languages are very complex. You cant possibly know every way to do everything that you want.  The likelihood is that you won’t program in the language you learn.  Allows language specifications be understood by programmers and allows more learnability between languages
2 Basic Forms		 Railroad diagram (aka syntax structure diagrams) BNF/EBNF
Railroad diagrams
Elements Allowable Paths
Pre defined langauge elements	 Eg, letter, sentence, program, variable name Variable
Fixed Elements	 Reserved words, eg, Dim, -+, 0, 1 Dim As
The elements can be combined to give options Eg,  A Boolean Constant T F
Or to repeat elements Eg,  A word Letter
And these can then be combined Eg, a number that can be either positive or negative Digit _
Textbook	 Pg 168 Defines the Winston language in railroad diagrams Is the following legitimate conditions Abcd  =  +99
Abcd  =  +99 Abcd is a legitimate identifier, because it starts with an uppercase followed by a number of lower case +99 is a legitimate constant because it is a negative followed by a number of digits The statement follows the correct order of   		Identifier condition constant Davis, Sam (2008) Software Design and Development: The Preliminary Course, Parramatta Education Centre, Sydney
Abcd  =  +99 Abcd is a legitimate identifier, because it starts with an uppercase followed by a number of lower case +99 is a legitimate constant because it is a negative followed by a number of digits The statement follows the correct order of   		Identifier condition constant
Complete 2nd activity on pg 168 TEXT ACTIVITY
an example
In Visual Basic	 Construct a railroad diagram to describe a best practice, legal variable declaration.  Should follow the following structure:  Dim Public or Private Variable Name As Data Type
Public Dim Variable As Data Type Private From this, what needs to be further defined?
Data type	 In Visual Basic, this can be Boolean, Byte, Char, Date, Time, Decimal, Double, Int, Long, Object, Short, Single
Single Short Boolean Byte Char Date Time Decimal Double Int Long
Variables in VB Must begin with an uppercase letter Can be lower or upper case or digits after first letter
Upper Case LowerCase UpperCase Digit
0 9 8 7 6 5 4 3 2 1
Images from	 http://www.trs-80.com/trs80-mag-books.htm http://homepages.cwi.nl/~dik/english/codes/punched.html http://www.borislavdopudja.net/en/writings/cheating_google/

More Related Content

What's hot

Chapter1 c programming data types, variables and constants
Chapter1 c programming   data types, variables and constantsChapter1 c programming   data types, variables and constants
Chapter1 c programming data types, variables and constants
vinay arora
 

What's hot (20)

Lec 0 p pl
Lec 0 p plLec 0 p pl
Lec 0 p pl
 
Basic techniques in nlp
Basic techniques in nlpBasic techniques in nlp
Basic techniques in nlp
 
Fusing Modeling and Programming into Language-Oriented Programming
Fusing Modeling and Programming into Language-Oriented ProgrammingFusing Modeling and Programming into Language-Oriented Programming
Fusing Modeling and Programming into Language-Oriented Programming
 
Entity relationship modeling
Entity relationship modelingEntity relationship modeling
Entity relationship modeling
 
Welcome to lecture 4 in c programming
Welcome to lecture 4 in c programmingWelcome to lecture 4 in c programming
Welcome to lecture 4 in c programming
 
Bca5020 visual programming
Bca5020  visual programmingBca5020  visual programming
Bca5020 visual programming
 
Bca5020 visual programming
Bca5020  visual programmingBca5020  visual programming
Bca5020 visual programming
 
Clean code - DSC DYPCOE
Clean code - DSC DYPCOEClean code - DSC DYPCOE
Clean code - DSC DYPCOE
 
Equivalence of pda, cfg1
Equivalence of pda, cfg1Equivalence of pda, cfg1
Equivalence of pda, cfg1
 
C programming tutorial
C programming tutorialC programming tutorial
C programming tutorial
 
Tbl presentation
Tbl presentationTbl presentation
Tbl presentation
 
C++ Chapter 1
C++ Chapter 1C++ Chapter 1
C++ Chapter 1
 
Context Free Grammar
Context Free GrammarContext Free Grammar
Context Free Grammar
 
MACHINE-DRIVEN TEXT ANALYSIS
MACHINE-DRIVEN TEXT ANALYSISMACHINE-DRIVEN TEXT ANALYSIS
MACHINE-DRIVEN TEXT ANALYSIS
 
Est 102 ppt1
Est 102 ppt1Est 102 ppt1
Est 102 ppt1
 
Chapter1 c programming data types, variables and constants
Chapter1 c programming   data types, variables and constantsChapter1 c programming   data types, variables and constants
Chapter1 c programming data types, variables and constants
 
Language
LanguageLanguage
Language
 
Identifiers and keywords
Identifiers and keywordsIdentifiers and keywords
Identifiers and keywords
 
Computational model language and grammar bnf
Computational model language and grammar bnfComputational model language and grammar bnf
Computational model language and grammar bnf
 
The NuGram dynamic grammar language
The NuGram dynamic grammar languageThe NuGram dynamic grammar language
The NuGram dynamic grammar language
 

Viewers also liked (11)

Sdd Syntax Descriptions
Sdd Syntax DescriptionsSdd Syntax Descriptions
Sdd Syntax Descriptions
 
Sdd HSC Summary
Sdd HSC SummarySdd HSC Summary
Sdd HSC Summary
 
Desk Chekcing Algorithms
Desk Chekcing AlgorithmsDesk Chekcing Algorithms
Desk Chekcing Algorithms
 
Meta Languages Bnf Ebnf Student Version
Meta Languages Bnf Ebnf Student VersionMeta Languages Bnf Ebnf Student Version
Meta Languages Bnf Ebnf Student Version
 
Exam feedback term 1 2011
Exam feedback term 1 2011Exam feedback term 1 2011
Exam feedback term 1 2011
 
Algorithms Vs Meta Language
Algorithms Vs Meta LanguageAlgorithms Vs Meta Language
Algorithms Vs Meta Language
 
Meta Languages
Meta LanguagesMeta Languages
Meta Languages
 
Searching algorithms
Searching algorithmsSearching algorithms
Searching algorithms
 
Data Structures - Lecture 8 [Sorting Algorithms]
Data Structures - Lecture 8 [Sorting Algorithms]Data Structures - Lecture 8 [Sorting Algorithms]
Data Structures - Lecture 8 [Sorting Algorithms]
 
Introduction to visual basic programming
Introduction to visual basic programmingIntroduction to visual basic programming
Introduction to visual basic programming
 
Sorting Algorithms
Sorting AlgorithmsSorting Algorithms
Sorting Algorithms
 

Similar to Meta Languages Railroad Diagrams

C programming_MSBTE_Diploma_Pranoti Doke
C programming_MSBTE_Diploma_Pranoti DokeC programming_MSBTE_Diploma_Pranoti Doke
C programming_MSBTE_Diploma_Pranoti Doke
Pranoti Doke
 
Bc0053 – vb.net & xml
Bc0053 – vb.net & xmlBc0053 – vb.net & xml
Bc0053 – vb.net & xml
smumbahelp
 
Email Data Cleaning
Email Data CleaningEmail Data Cleaning
Email Data Cleaning
feiwin
 
Basic of the C language
Basic of the C languageBasic of the C language
Basic of the C language
Sachin Verma
 
Combinators, DSLs, HTML and F#
Combinators, DSLs, HTML and F#Combinators, DSLs, HTML and F#
Combinators, DSLs, HTML and F#
Robert Pickering
 
Designing A Syntax Based Retrieval System03
Designing A Syntax Based Retrieval System03Designing A Syntax Based Retrieval System03
Designing A Syntax Based Retrieval System03
Avelin Huo
 
c programming Pankaj Panjwani.pptx
c programming Pankaj Panjwani.pptxc programming Pankaj Panjwani.pptx
c programming Pankaj Panjwani.pptx
hario13
 

Similar to Meta Languages Railroad Diagrams (20)

C programming_MSBTE_Diploma_Pranoti Doke
C programming_MSBTE_Diploma_Pranoti DokeC programming_MSBTE_Diploma_Pranoti Doke
C programming_MSBTE_Diploma_Pranoti Doke
 
Python Introduction
Python IntroductionPython Introduction
Python Introduction
 
c programming session 1.pptx
c programming session 1.pptxc programming session 1.pptx
c programming session 1.pptx
 
cunit1.pptx
cunit1.pptxcunit1.pptx
cunit1.pptx
 
Bc0053 – vb.net & xml
Bc0053 – vb.net & xmlBc0053 – vb.net & xml
Bc0053 – vb.net & xml
 
Feature Engineering in NLP.pdf
Feature Engineering in NLP.pdfFeature Engineering in NLP.pdf
Feature Engineering in NLP.pdf
 
Introduction to C Programming - I
Introduction to C Programming - I Introduction to C Programming - I
Introduction to C Programming - I
 
1 puc programming using c++
1 puc programming using c++1 puc programming using c++
1 puc programming using c++
 
AN ADVANCED APPROACH FOR RULE BASED ENGLISH TO BENGALI MACHINE TRANSLATION
AN ADVANCED APPROACH FOR RULE BASED ENGLISH TO BENGALI MACHINE TRANSLATIONAN ADVANCED APPROACH FOR RULE BASED ENGLISH TO BENGALI MACHINE TRANSLATION
AN ADVANCED APPROACH FOR RULE BASED ENGLISH TO BENGALI MACHINE TRANSLATION
 
Email Data Cleaning
Email Data CleaningEmail Data Cleaning
Email Data Cleaning
 
C programming Ms. Pranoti Doke
C programming Ms. Pranoti DokeC programming Ms. Pranoti Doke
C programming Ms. Pranoti Doke
 
C++ book
C++ bookC++ book
C++ book
 
Basic of the C language
Basic of the C languageBasic of the C language
Basic of the C language
 
Combinators, DSLs, HTML and F#
Combinators, DSLs, HTML and F#Combinators, DSLs, HTML and F#
Combinators, DSLs, HTML and F#
 
ch02c.pdf
ch02c.pdfch02c.pdf
ch02c.pdf
 
Designing A Syntax Based Retrieval System03
Designing A Syntax Based Retrieval System03Designing A Syntax Based Retrieval System03
Designing A Syntax Based Retrieval System03
 
c programming Pankaj Panjwani.pptx
c programming Pankaj Panjwani.pptxc programming Pankaj Panjwani.pptx
c programming Pankaj Panjwani.pptx
 
Language processors
Language processorsLanguage processors
Language processors
 
Top 10 Interview Questions for Coding Job.docx
Top 10 Interview Questions for Coding Job.docxTop 10 Interview Questions for Coding Job.docx
Top 10 Interview Questions for Coding Job.docx
 
Top 10 Interview Questions for Coding Job.docx
Top 10 Interview Questions for Coding Job.docxTop 10 Interview Questions for Coding Job.docx
Top 10 Interview Questions for Coding Job.docx
 

More from Kelly Bauer

More from Kelly Bauer (20)

Logo design
Logo designLogo design
Logo design
 
Team teaching
Team teachingTeam teaching
Team teaching
 
Cmyk vs rgb
Cmyk vs rgbCmyk vs rgb
Cmyk vs rgb
 
Structural factors
Structural factorsStructural factors
Structural factors
 
Scaffolding activities
Scaffolding activitiesScaffolding activities
Scaffolding activities
 
Team teaching
Team teachingTeam teaching
Team teaching
 
Entry document
Entry documentEntry document
Entry document
 
Project showcase
Project showcaseProject showcase
Project showcase
 
Project showcase church in the middle ages
Project showcase church in the middle agesProject showcase church in the middle ages
Project showcase church in the middle ages
 
Selection and justification
Selection and justificationSelection and justification
Selection and justification
 
6 multimedia elements - www
6   multimedia elements - www6   multimedia elements - www
6 multimedia elements - www
 
3 multimedia elements - audio
3   multimedia elements - audio3   multimedia elements - audio
3 multimedia elements - audio
 
OHS for Industrial Technology
OHS for Industrial TechnologyOHS for Industrial Technology
OHS for Industrial Technology
 
Images (Samples from past exams
Images (Samples from past examsImages (Samples from past exams
Images (Samples from past exams
 
Personell issues
Personell issuesPersonell issues
Personell issues
 
Differentiation
DifferentiationDifferentiation
Differentiation
 
Exam feedback term 1 2011
Exam feedback term 1 2011Exam feedback term 1 2011
Exam feedback term 1 2011
 
5 multimedia elements - animation
5   multimedia elements - animation5   multimedia elements - animation
5 multimedia elements - animation
 
4 multimedia elements - video
4   multimedia elements - video4   multimedia elements - video
4 multimedia elements - video
 
Stem 71 24 multimedia elements - graphics
Stem 71 24   multimedia elements - graphicsStem 71 24   multimedia elements - graphics
Stem 71 24 multimedia elements - graphics
 

Recently uploaded

The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
heathfieldcps1
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 

Recently uploaded (20)

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...
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
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
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
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.
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
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
 
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
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
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.
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptx
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
Spatium Project Simulation student brief
Spatium Project Simulation student briefSpatium Project Simulation student brief
Spatium Project Simulation student brief
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 

Meta Languages Railroad Diagrams

  • 1. Kelly Bauer Meta Languages
  • 2. Why? Describes the syntax of a computer language Rules that govern the arrangement of elements in a language eg. The ran cat OR The cat ran
  • 3. Why not just learn the language? Programming languages are very complex. You cant possibly know every way to do everything that you want. The likelihood is that you won’t program in the language you learn.
  • 4.
  • 5.
  • 6. Why not just learn the language? Programming languages are very complex. You cant possibly know every way to do everything that you want. The likelihood is that you won’t program in the language you learn. Allows language specifications be understood by programmers and allows more learnability between languages
  • 7. 2 Basic Forms Railroad diagram (aka syntax structure diagrams) BNF/EBNF
  • 10. Pre defined langauge elements Eg, letter, sentence, program, variable name Variable
  • 11. Fixed Elements Reserved words, eg, Dim, -+, 0, 1 Dim As
  • 12. The elements can be combined to give options Eg, A Boolean Constant T F
  • 13. Or to repeat elements Eg, A word Letter
  • 14. And these can then be combined Eg, a number that can be either positive or negative Digit _
  • 15. Textbook Pg 168 Defines the Winston language in railroad diagrams Is the following legitimate conditions Abcd = +99
  • 16. Abcd = +99 Abcd is a legitimate identifier, because it starts with an uppercase followed by a number of lower case +99 is a legitimate constant because it is a negative followed by a number of digits The statement follows the correct order of Identifier condition constant Davis, Sam (2008) Software Design and Development: The Preliminary Course, Parramatta Education Centre, Sydney
  • 17. Abcd = +99 Abcd is a legitimate identifier, because it starts with an uppercase followed by a number of lower case +99 is a legitimate constant because it is a negative followed by a number of digits The statement follows the correct order of Identifier condition constant
  • 18. Complete 2nd activity on pg 168 TEXT ACTIVITY
  • 20. In Visual Basic Construct a railroad diagram to describe a best practice, legal variable declaration. Should follow the following structure: Dim Public or Private Variable Name As Data Type
  • 21. Public Dim Variable As Data Type Private From this, what needs to be further defined?
  • 22. Data type In Visual Basic, this can be Boolean, Byte, Char, Date, Time, Decimal, Double, Int, Long, Object, Short, Single
  • 23. Single Short Boolean Byte Char Date Time Decimal Double Int Long
  • 24. Variables in VB Must begin with an uppercase letter Can be lower or upper case or digits after first letter
  • 25. Upper Case LowerCase UpperCase Digit
  • 26. 0 9 8 7 6 5 4 3 2 1
  • 27. Images from http://www.trs-80.com/trs80-mag-books.htm http://homepages.cwi.nl/~dik/english/codes/punched.html http://www.borislavdopudja.net/en/writings/cheating_google/