SlideShare a Scribd company logo
PREPARED BY ,
Asst.Prof.M.Gokilavani,
BIET
9/27/2022 1
 Preliminary Concepts: Reasons for Studying Concepts
of Programming Languages, Programming Domains
 Language Evaluation Criteria, Influences on
Language Design, Language Categories
 Language Design Trade-Offs, Implementation
Methods, Programming Environments.
 Syntax and Semantics: General Problem of Describing
Syntax and Semantics,
 Formal Methods of Describing Syntax
 Attribute Grammars, Describing the Meanings of
Programs.
9/27/2022 2
9/27/2022 3
 Readability : The ease with which programs can be
read and understood.
 Writability: The ease with which a language can be
used to create programs.
 Reliability: Conformance to specifications (i.e.,
perform to its specifications)
 Cost: the ultimate total cost
9/27/2022 4
1. Readability
● Software development was largely thought of in term of writing code “LOC”.
● Language constructs were designed more from the point of view of the computer than
the users.
● Because ease of maintenance is determined in large part by the readability of programs,
readability became an important measure of the quality of programs and programming
languages.
● The most important criterion “ease of use”
2. Overall simplicity “Strongly affects readability”
 Too many features make the language difficult to learn. Programmers tend to learn a
subset of the language and ignore its other features. “ALGOL 60”.
 Multiplicity of features is also a complicating characteristic “having more than one
way to accomplish a particular operation. “Ex Java”:
 Operator overloading where a single operator symbol has more than one meaning.
 Although this is a useful feature, it can lead to reduced readability if users are allowed
to create their own overloading and do not do it sensibly.
9/27/2022 5
 How is it for one to read and understand programs written in
the PL?
 Arguably the most important criterion!
 Factors effecting readability include:
Overall simplicity
Too many features is bad Orthogonality
Makes the language easy to learn and read
Meaning is context independent
• Control statements
• Data type and structures
• Syntax considerations
9/27/2022 6
9/27/2022 7
 Makes the language easy to learn and read.
 Meaning is context independent. Pointers should be able to point
to any type of variable or data structure. The lack of
Orthogonality leads to exceptions to the rules of the language.
 A relatively small set of primitive constructs can be combined in
a relatively small number of ways to build the control and data
structures of the language.
 Every possible combination is legal and meaningful.
 The more orthogonal the design of a language, the fewer
exceptions the language rules require.
 The most orthogonal programming language is ALGOL 68.
Every language construct has a type, and there are no restrictions
on those types.
 This form of Orthogonality leads to unnecessary complexity.
9/27/2022 8
 It became widely recognized that indiscriminate use of
goto statements severely reduced program readability.
 Basic and Fortran in the early 70s lacked the control
statements that allow strong restrictions on the use of
goto, so writing highly readable programs in those
languages was difficult.
 Since then, languages have included sufficient control
structures.
 The control statement design of a language is now a
less important factor in readability than it was in the
past.
9/27/2022 9
 The presence of adequate facilities for defining data
types and data structures in a language is another
significant aid to reliability.
Ex: Boolean type.
■ timeout = 1 or
■ timeout = true
9/27/2022 10
 The syntax of the elements of a language has a significant effect on
readability.
 The following are examples of syntactic design choices that affect
readability:
 Identifiers forms: Restricting identifiers to very short lengths detracts from
readability. ANSI BASIC (1978) an identifiers could consist only of a
single letter of a single letter followed by a single digit.
 Special Words: Program appearance and thus program readability are
strongly influenced by the forms of a language’s special words.
 Ex: while, class, for. C uses braces for pairing control structures. It is
difficult to determine which group is being ended. Fortran 95 allows
programmers to use special names as legal variable names.
 Form and Meaning: Designing statements so that their appearance at least
partially indicates their purpose is an obvious aid to readability.
 Semantic should follow directly from syntax, or form.
9/27/2022 11
 How easy is it to write programs in the
language?
 Factors effecting Writability:
 Simplicity and Orthogonality
 Support for abstraction
 Expressivity
 Fit for the domain and problem
9/27/2022 12
 It is a measure of how easily a language can be used to create programs for a
chosen problem domain.
 Most of the language characteristics that affect readability also affect Writability.
 Simplicity and Orthogonality
◦ A smaller number of primitive constructs and a consistent set of rules for
combining them is much better than simply having a large number of primitives.
◦ Support for abstraction
 Abstraction means the ability to define and then use complicated structures or
operations in ways that allow many of the details to be ignored.
 A process abstraction is the use of a subprogram to implement a sort
algorithm that is required several times in a program instead of replicating it
in all places where it is needed.
 Expressivity
 It means that a language has relatively convenient, rather than cumbersome,
ways of specifying computations. ○
 Ex: ++count ⇔ count = count + 1 // more convenient and shorter
9/27/2022 13
Factors:
 Type checking
 Exception handling
 Aliasing
 Readability and Writability
9/27/2022 14
 A program is said to be reliable if it performs to its specifications
under all conditions.
 Type checking: is simply testing for type errors in a given
program, either by the compiler or during program execution.
 The earlier errors are detected, the less expensive it is to make
the required repairs. Java requires type checking of nearly all
variables and expressions at compile time.
 Exception handling: the ability to intercept run-time errors, take
corrective measures, and then continue is a great aid to reliability.
 Aliasing: it is having two or more distinct referencing methods,
or names, for the same memory cell.
 It is now widely accepted that aliasing is a dangerous feature in a
language.
 Readability and Writability: Both readability and Writability
influenced reliability.
9/27/2022 15
 Categories
 Programmer training
 Software creation
 Compilation
 Execution
 Compiler cost
 Poor reliability
 Maintenance
9/27/2022 16
9/27/2022 17

More Related Content

Similar to Unit 1_Evaluation Criteria_session 2.pptx

Programming
ProgrammingProgramming
Programming
vanesa4ab
 
Comparative Study of programming Languages
Comparative Study of programming LanguagesComparative Study of programming Languages
Comparative Study of programming Languages
Ishan Monga
 
Lecture 5 - Structured Programming Language
Lecture 5 - Structured Programming Language Lecture 5 - Structured Programming Language
Lecture 5 - Structured Programming Language
Md. Imran Hossain Showrov
 
Cobbbbbbbnnnnnnnnnnnnnnnnncepts of PL.pptx
Cobbbbbbbnnnnnnnnnnnnnnnnncepts of PL.pptxCobbbbbbbnnnnnnnnnnnnnnnnncepts of PL.pptx
Cobbbbbbbnnnnnnnnnnnnnnnnncepts of PL.pptx
mehrankhan7842312
 
Computer Programming
Computer Programming Computer Programming
Computer Programming
Newreborn Incarnation
 
Computer
ComputerComputer
Java-centered Translator-based Multi-paradigm Software Development Environment
Java-centered Translator-based Multi-paradigm Software Development EnvironmentJava-centered Translator-based Multi-paradigm Software Development Environment
Java-centered Translator-based Multi-paradigm Software Development Environment
Waqas Tariq
 
Computer programing 111 lecture 1
Computer programing 111 lecture 1 Computer programing 111 lecture 1
Computer programing 111 lecture 1
ITNet
 
Unit 1
Unit 1Unit 1
PROGRAMMING LANGUAGE AND TYPES
PROGRAMMING LANGUAGE AND TYPESPROGRAMMING LANGUAGE AND TYPES
PROGRAMMING LANGUAGE AND TYPES
DrThenmozhiKarunanit
 
Generic Programming
Generic ProgrammingGeneric Programming
Generic Programming
Ganesh Samarthyam
 
Unit 1_Evaluation Criteria_session 3.pptx
Unit 1_Evaluation Criteria_session 3.pptxUnit 1_Evaluation Criteria_session 3.pptx
Unit 1_Evaluation Criteria_session 3.pptx
Asst.prof M.Gokilavani
 
Programming Language Paradigms February.ppt
Programming Language Paradigms February.pptProgramming Language Paradigms February.ppt
Programming Language Paradigms February.ppt
alireza alikhani
 
The Concept Of Abstract Data Types
The Concept Of Abstract Data TypesThe Concept Of Abstract Data Types
The Concept Of Abstract Data Types
Katy Allen
 
CHAPTER 1 OBJECT ORIENTED NOTES SLIDE PRESENTATION
CHAPTER 1 OBJECT ORIENTED NOTES SLIDE PRESENTATIONCHAPTER 1 OBJECT ORIENTED NOTES SLIDE PRESENTATION
CHAPTER 1 OBJECT ORIENTED NOTES SLIDE PRESENTATION
TSha7
 
Comparative Analysis of Visual Basic VS Java programming language.docx
Comparative Analysis of Visual Basic VS Java programming language.docxComparative Analysis of Visual Basic VS Java programming language.docx
Comparative Analysis of Visual Basic VS Java programming language.docx
RichwellIanAfrica
 
Usability evaluation of Domain-Specific Languages
Usability evaluation of Domain-Specific LanguagesUsability evaluation of Domain-Specific Languages
Usability evaluation of Domain-Specific Languages
Ankica Barisic
 
Chapter 1
Chapter 1Chapter 1
Chapter 1
ZcelTablizo3
 
Programming language
Programming languageProgramming language
Programming language
Shuja Qais
 
New microsoft office word document
New microsoft office word documentNew microsoft office word document
New microsoft office word document
SIVAJISADHANA
 

Similar to Unit 1_Evaluation Criteria_session 2.pptx (20)

Programming
ProgrammingProgramming
Programming
 
Comparative Study of programming Languages
Comparative Study of programming LanguagesComparative Study of programming Languages
Comparative Study of programming Languages
 
Lecture 5 - Structured Programming Language
Lecture 5 - Structured Programming Language Lecture 5 - Structured Programming Language
Lecture 5 - Structured Programming Language
 
Cobbbbbbbnnnnnnnnnnnnnnnnncepts of PL.pptx
Cobbbbbbbnnnnnnnnnnnnnnnnncepts of PL.pptxCobbbbbbbnnnnnnnnnnnnnnnnncepts of PL.pptx
Cobbbbbbbnnnnnnnnnnnnnnnnncepts of PL.pptx
 
Computer Programming
Computer Programming Computer Programming
Computer Programming
 
Computer
ComputerComputer
Computer
 
Java-centered Translator-based Multi-paradigm Software Development Environment
Java-centered Translator-based Multi-paradigm Software Development EnvironmentJava-centered Translator-based Multi-paradigm Software Development Environment
Java-centered Translator-based Multi-paradigm Software Development Environment
 
Computer programing 111 lecture 1
Computer programing 111 lecture 1 Computer programing 111 lecture 1
Computer programing 111 lecture 1
 
Unit 1
Unit 1Unit 1
Unit 1
 
PROGRAMMING LANGUAGE AND TYPES
PROGRAMMING LANGUAGE AND TYPESPROGRAMMING LANGUAGE AND TYPES
PROGRAMMING LANGUAGE AND TYPES
 
Generic Programming
Generic ProgrammingGeneric Programming
Generic Programming
 
Unit 1_Evaluation Criteria_session 3.pptx
Unit 1_Evaluation Criteria_session 3.pptxUnit 1_Evaluation Criteria_session 3.pptx
Unit 1_Evaluation Criteria_session 3.pptx
 
Programming Language Paradigms February.ppt
Programming Language Paradigms February.pptProgramming Language Paradigms February.ppt
Programming Language Paradigms February.ppt
 
The Concept Of Abstract Data Types
The Concept Of Abstract Data TypesThe Concept Of Abstract Data Types
The Concept Of Abstract Data Types
 
CHAPTER 1 OBJECT ORIENTED NOTES SLIDE PRESENTATION
CHAPTER 1 OBJECT ORIENTED NOTES SLIDE PRESENTATIONCHAPTER 1 OBJECT ORIENTED NOTES SLIDE PRESENTATION
CHAPTER 1 OBJECT ORIENTED NOTES SLIDE PRESENTATION
 
Comparative Analysis of Visual Basic VS Java programming language.docx
Comparative Analysis of Visual Basic VS Java programming language.docxComparative Analysis of Visual Basic VS Java programming language.docx
Comparative Analysis of Visual Basic VS Java programming language.docx
 
Usability evaluation of Domain-Specific Languages
Usability evaluation of Domain-Specific LanguagesUsability evaluation of Domain-Specific Languages
Usability evaluation of Domain-Specific Languages
 
Chapter 1
Chapter 1Chapter 1
Chapter 1
 
Programming language
Programming languageProgramming language
Programming language
 
New microsoft office word document
New microsoft office word documentNew microsoft office word document
New microsoft office word document
 

More from Asst.prof M.Gokilavani

CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
Asst.prof M.Gokilavani
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
Asst.prof M.Gokilavani
 
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
Asst.prof M.Gokilavani
 
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfCCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
Asst.prof M.Gokilavani
 
IT8073_Information Security_UNIT I _.pdf
IT8073_Information Security_UNIT I _.pdfIT8073_Information Security_UNIT I _.pdf
IT8073_Information Security_UNIT I _.pdf
Asst.prof M.Gokilavani
 
IT8073 _Information Security _UNIT I Full notes
IT8073 _Information Security _UNIT I Full notesIT8073 _Information Security _UNIT I Full notes
IT8073 _Information Security _UNIT I Full notes
Asst.prof M.Gokilavani
 
GE3151 PSPP UNIT IV QUESTION BANK.docx.pdf
GE3151 PSPP UNIT IV QUESTION BANK.docx.pdfGE3151 PSPP UNIT IV QUESTION BANK.docx.pdf
GE3151 PSPP UNIT IV QUESTION BANK.docx.pdf
Asst.prof M.Gokilavani
 
GE3151 PSPP UNIT III QUESTION BANK.docx.pdf
GE3151 PSPP UNIT III QUESTION BANK.docx.pdfGE3151 PSPP UNIT III QUESTION BANK.docx.pdf
GE3151 PSPP UNIT III QUESTION BANK.docx.pdf
Asst.prof M.Gokilavani
 
GE3151 UNIT II Study material .pdf
GE3151 UNIT II Study material .pdfGE3151 UNIT II Study material .pdf
GE3151 UNIT II Study material .pdf
Asst.prof M.Gokilavani
 
GE3151 PSPP All unit question bank.pdf
GE3151 PSPP All unit question bank.pdfGE3151 PSPP All unit question bank.pdf
GE3151 PSPP All unit question bank.pdf
Asst.prof M.Gokilavani
 
GE3151_PSPP_All unit _Notes
GE3151_PSPP_All unit _NotesGE3151_PSPP_All unit _Notes
GE3151_PSPP_All unit _Notes
Asst.prof M.Gokilavani
 
GE3151_PSPP_UNIT_5_Notes
GE3151_PSPP_UNIT_5_NotesGE3151_PSPP_UNIT_5_Notes
GE3151_PSPP_UNIT_5_Notes
Asst.prof M.Gokilavani
 
GE3151_PSPP_UNIT_4_Notes
GE3151_PSPP_UNIT_4_NotesGE3151_PSPP_UNIT_4_Notes
GE3151_PSPP_UNIT_4_Notes
Asst.prof M.Gokilavani
 
GE3151_PSPP_UNIT_3_Notes
GE3151_PSPP_UNIT_3_NotesGE3151_PSPP_UNIT_3_Notes
GE3151_PSPP_UNIT_3_Notes
Asst.prof M.Gokilavani
 
GE3151_PSPP_UNIT_2_Notes
GE3151_PSPP_UNIT_2_NotesGE3151_PSPP_UNIT_2_Notes
GE3151_PSPP_UNIT_2_Notes
Asst.prof M.Gokilavani
 
AI3391 Artificial intelligence Unit IV Notes _ merged.pdf
AI3391 Artificial intelligence Unit IV Notes _ merged.pdfAI3391 Artificial intelligence Unit IV Notes _ merged.pdf
AI3391 Artificial intelligence Unit IV Notes _ merged.pdf
Asst.prof M.Gokilavani
 
AI3391 Artificial intelligence Session 29 Forward and backward chaining.pdf
AI3391 Artificial intelligence Session 29 Forward and backward chaining.pdfAI3391 Artificial intelligence Session 29 Forward and backward chaining.pdf
AI3391 Artificial intelligence Session 29 Forward and backward chaining.pdf
Asst.prof M.Gokilavani
 
AI3391 Artificial intelligence Session 28 Resolution.pptx
AI3391 Artificial intelligence Session 28 Resolution.pptxAI3391 Artificial intelligence Session 28 Resolution.pptx
AI3391 Artificial intelligence Session 28 Resolution.pptx
Asst.prof M.Gokilavani
 
AI3391 Artificial intelligence session 27 inference and unification.pptx
AI3391 Artificial intelligence session 27 inference and unification.pptxAI3391 Artificial intelligence session 27 inference and unification.pptx
AI3391 Artificial intelligence session 27 inference and unification.pptx
Asst.prof M.Gokilavani
 
AI3391 Artificial Intelligence Session 26 First order logic.pptx
AI3391 Artificial Intelligence Session 26 First order logic.pptxAI3391 Artificial Intelligence Session 26 First order logic.pptx
AI3391 Artificial Intelligence Session 26 First order logic.pptx
Asst.prof M.Gokilavani
 

More from Asst.prof M.Gokilavani (20)

CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
 
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
 
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfCCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
 
IT8073_Information Security_UNIT I _.pdf
IT8073_Information Security_UNIT I _.pdfIT8073_Information Security_UNIT I _.pdf
IT8073_Information Security_UNIT I _.pdf
 
IT8073 _Information Security _UNIT I Full notes
IT8073 _Information Security _UNIT I Full notesIT8073 _Information Security _UNIT I Full notes
IT8073 _Information Security _UNIT I Full notes
 
GE3151 PSPP UNIT IV QUESTION BANK.docx.pdf
GE3151 PSPP UNIT IV QUESTION BANK.docx.pdfGE3151 PSPP UNIT IV QUESTION BANK.docx.pdf
GE3151 PSPP UNIT IV QUESTION BANK.docx.pdf
 
GE3151 PSPP UNIT III QUESTION BANK.docx.pdf
GE3151 PSPP UNIT III QUESTION BANK.docx.pdfGE3151 PSPP UNIT III QUESTION BANK.docx.pdf
GE3151 PSPP UNIT III QUESTION BANK.docx.pdf
 
GE3151 UNIT II Study material .pdf
GE3151 UNIT II Study material .pdfGE3151 UNIT II Study material .pdf
GE3151 UNIT II Study material .pdf
 
GE3151 PSPP All unit question bank.pdf
GE3151 PSPP All unit question bank.pdfGE3151 PSPP All unit question bank.pdf
GE3151 PSPP All unit question bank.pdf
 
GE3151_PSPP_All unit _Notes
GE3151_PSPP_All unit _NotesGE3151_PSPP_All unit _Notes
GE3151_PSPP_All unit _Notes
 
GE3151_PSPP_UNIT_5_Notes
GE3151_PSPP_UNIT_5_NotesGE3151_PSPP_UNIT_5_Notes
GE3151_PSPP_UNIT_5_Notes
 
GE3151_PSPP_UNIT_4_Notes
GE3151_PSPP_UNIT_4_NotesGE3151_PSPP_UNIT_4_Notes
GE3151_PSPP_UNIT_4_Notes
 
GE3151_PSPP_UNIT_3_Notes
GE3151_PSPP_UNIT_3_NotesGE3151_PSPP_UNIT_3_Notes
GE3151_PSPP_UNIT_3_Notes
 
GE3151_PSPP_UNIT_2_Notes
GE3151_PSPP_UNIT_2_NotesGE3151_PSPP_UNIT_2_Notes
GE3151_PSPP_UNIT_2_Notes
 
AI3391 Artificial intelligence Unit IV Notes _ merged.pdf
AI3391 Artificial intelligence Unit IV Notes _ merged.pdfAI3391 Artificial intelligence Unit IV Notes _ merged.pdf
AI3391 Artificial intelligence Unit IV Notes _ merged.pdf
 
AI3391 Artificial intelligence Session 29 Forward and backward chaining.pdf
AI3391 Artificial intelligence Session 29 Forward and backward chaining.pdfAI3391 Artificial intelligence Session 29 Forward and backward chaining.pdf
AI3391 Artificial intelligence Session 29 Forward and backward chaining.pdf
 
AI3391 Artificial intelligence Session 28 Resolution.pptx
AI3391 Artificial intelligence Session 28 Resolution.pptxAI3391 Artificial intelligence Session 28 Resolution.pptx
AI3391 Artificial intelligence Session 28 Resolution.pptx
 
AI3391 Artificial intelligence session 27 inference and unification.pptx
AI3391 Artificial intelligence session 27 inference and unification.pptxAI3391 Artificial intelligence session 27 inference and unification.pptx
AI3391 Artificial intelligence session 27 inference and unification.pptx
 
AI3391 Artificial Intelligence Session 26 First order logic.pptx
AI3391 Artificial Intelligence Session 26 First order logic.pptxAI3391 Artificial Intelligence Session 26 First order logic.pptx
AI3391 Artificial Intelligence Session 26 First order logic.pptx
 

Recently uploaded

BRAIN TUMOR DETECTION for seminar ppt.pdf
BRAIN TUMOR DETECTION for seminar ppt.pdfBRAIN TUMOR DETECTION for seminar ppt.pdf
BRAIN TUMOR DETECTION for seminar ppt.pdf
LAXMAREDDY22
 
Introduction to AI Safety (public presentation).pptx
Introduction to AI Safety (public presentation).pptxIntroduction to AI Safety (public presentation).pptx
Introduction to AI Safety (public presentation).pptx
MiscAnnoy1
 
CEC 352 - SATELLITE COMMUNICATION UNIT 1
CEC 352 - SATELLITE COMMUNICATION UNIT 1CEC 352 - SATELLITE COMMUNICATION UNIT 1
CEC 352 - SATELLITE COMMUNICATION UNIT 1
PKavitha10
 
The Python for beginners. This is an advance computer language.
The Python for beginners. This is an advance computer language.The Python for beginners. This is an advance computer language.
The Python for beginners. This is an advance computer language.
sachin chaurasia
 
Null Bangalore | Pentesters Approach to AWS IAM
Null Bangalore | Pentesters Approach to AWS IAMNull Bangalore | Pentesters Approach to AWS IAM
Null Bangalore | Pentesters Approach to AWS IAM
Divyanshu
 
Embedded machine learning-based road conditions and driving behavior monitoring
Embedded machine learning-based road conditions and driving behavior monitoringEmbedded machine learning-based road conditions and driving behavior monitoring
Embedded machine learning-based road conditions and driving behavior monitoring
IJECEIAES
 
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressionsKuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
Victor Morales
 
Computational Engineering IITH Presentation
Computational Engineering IITH PresentationComputational Engineering IITH Presentation
Computational Engineering IITH Presentation
co23btech11018
 
Certificates - Mahmoud Mohamed Moursi Ahmed
Certificates - Mahmoud Mohamed Moursi AhmedCertificates - Mahmoud Mohamed Moursi Ahmed
Certificates - Mahmoud Mohamed Moursi Ahmed
Mahmoud Morsy
 
spirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptxspirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptx
Madan Karki
 
cnn.pptx Convolutional neural network used for image classication
cnn.pptx Convolutional neural network used for image classicationcnn.pptx Convolutional neural network used for image classication
cnn.pptx Convolutional neural network used for image classication
SakkaravarthiShanmug
 
Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...
Prakhyath Rai
 
Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...
IJECEIAES
 
john krisinger-the science and history of the alcoholic beverage.pptx
john krisinger-the science and history of the alcoholic beverage.pptxjohn krisinger-the science and history of the alcoholic beverage.pptx
john krisinger-the science and history of the alcoholic beverage.pptx
Madan Karki
 
Curve Fitting in Numerical Methods Regression
Curve Fitting in Numerical Methods RegressionCurve Fitting in Numerical Methods Regression
Curve Fitting in Numerical Methods Regression
Nada Hikmah
 
22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt
KrishnaveniKrishnara1
 
International Conference on NLP, Artificial Intelligence, Machine Learning an...
International Conference on NLP, Artificial Intelligence, Machine Learning an...International Conference on NLP, Artificial Intelligence, Machine Learning an...
International Conference on NLP, Artificial Intelligence, Machine Learning an...
gerogepatton
 
Properties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptxProperties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptx
MDSABBIROJJAMANPAYEL
 
Welding Metallurgy Ferrous Materials.pdf
Welding Metallurgy Ferrous Materials.pdfWelding Metallurgy Ferrous Materials.pdf
Welding Metallurgy Ferrous Materials.pdf
AjmalKhan50578
 
Generative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of contentGenerative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of content
Hitesh Mohapatra
 

Recently uploaded (20)

BRAIN TUMOR DETECTION for seminar ppt.pdf
BRAIN TUMOR DETECTION for seminar ppt.pdfBRAIN TUMOR DETECTION for seminar ppt.pdf
BRAIN TUMOR DETECTION for seminar ppt.pdf
 
Introduction to AI Safety (public presentation).pptx
Introduction to AI Safety (public presentation).pptxIntroduction to AI Safety (public presentation).pptx
Introduction to AI Safety (public presentation).pptx
 
CEC 352 - SATELLITE COMMUNICATION UNIT 1
CEC 352 - SATELLITE COMMUNICATION UNIT 1CEC 352 - SATELLITE COMMUNICATION UNIT 1
CEC 352 - SATELLITE COMMUNICATION UNIT 1
 
The Python for beginners. This is an advance computer language.
The Python for beginners. This is an advance computer language.The Python for beginners. This is an advance computer language.
The Python for beginners. This is an advance computer language.
 
Null Bangalore | Pentesters Approach to AWS IAM
Null Bangalore | Pentesters Approach to AWS IAMNull Bangalore | Pentesters Approach to AWS IAM
Null Bangalore | Pentesters Approach to AWS IAM
 
Embedded machine learning-based road conditions and driving behavior monitoring
Embedded machine learning-based road conditions and driving behavior monitoringEmbedded machine learning-based road conditions and driving behavior monitoring
Embedded machine learning-based road conditions and driving behavior monitoring
 
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressionsKuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
 
Computational Engineering IITH Presentation
Computational Engineering IITH PresentationComputational Engineering IITH Presentation
Computational Engineering IITH Presentation
 
Certificates - Mahmoud Mohamed Moursi Ahmed
Certificates - Mahmoud Mohamed Moursi AhmedCertificates - Mahmoud Mohamed Moursi Ahmed
Certificates - Mahmoud Mohamed Moursi Ahmed
 
spirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptxspirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptx
 
cnn.pptx Convolutional neural network used for image classication
cnn.pptx Convolutional neural network used for image classicationcnn.pptx Convolutional neural network used for image classication
cnn.pptx Convolutional neural network used for image classication
 
Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...
 
Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...
 
john krisinger-the science and history of the alcoholic beverage.pptx
john krisinger-the science and history of the alcoholic beverage.pptxjohn krisinger-the science and history of the alcoholic beverage.pptx
john krisinger-the science and history of the alcoholic beverage.pptx
 
Curve Fitting in Numerical Methods Regression
Curve Fitting in Numerical Methods RegressionCurve Fitting in Numerical Methods Regression
Curve Fitting in Numerical Methods Regression
 
22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt
 
International Conference on NLP, Artificial Intelligence, Machine Learning an...
International Conference on NLP, Artificial Intelligence, Machine Learning an...International Conference on NLP, Artificial Intelligence, Machine Learning an...
International Conference on NLP, Artificial Intelligence, Machine Learning an...
 
Properties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptxProperties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptx
 
Welding Metallurgy Ferrous Materials.pdf
Welding Metallurgy Ferrous Materials.pdfWelding Metallurgy Ferrous Materials.pdf
Welding Metallurgy Ferrous Materials.pdf
 
Generative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of contentGenerative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of content
 

Unit 1_Evaluation Criteria_session 2.pptx

  • 2.  Preliminary Concepts: Reasons for Studying Concepts of Programming Languages, Programming Domains  Language Evaluation Criteria, Influences on Language Design, Language Categories  Language Design Trade-Offs, Implementation Methods, Programming Environments.  Syntax and Semantics: General Problem of Describing Syntax and Semantics,  Formal Methods of Describing Syntax  Attribute Grammars, Describing the Meanings of Programs. 9/27/2022 2
  • 4.  Readability : The ease with which programs can be read and understood.  Writability: The ease with which a language can be used to create programs.  Reliability: Conformance to specifications (i.e., perform to its specifications)  Cost: the ultimate total cost 9/27/2022 4
  • 5. 1. Readability ● Software development was largely thought of in term of writing code “LOC”. ● Language constructs were designed more from the point of view of the computer than the users. ● Because ease of maintenance is determined in large part by the readability of programs, readability became an important measure of the quality of programs and programming languages. ● The most important criterion “ease of use” 2. Overall simplicity “Strongly affects readability”  Too many features make the language difficult to learn. Programmers tend to learn a subset of the language and ignore its other features. “ALGOL 60”.  Multiplicity of features is also a complicating characteristic “having more than one way to accomplish a particular operation. “Ex Java”:  Operator overloading where a single operator symbol has more than one meaning.  Although this is a useful feature, it can lead to reduced readability if users are allowed to create their own overloading and do not do it sensibly. 9/27/2022 5
  • 6.  How is it for one to read and understand programs written in the PL?  Arguably the most important criterion!  Factors effecting readability include: Overall simplicity Too many features is bad Orthogonality Makes the language easy to learn and read Meaning is context independent • Control statements • Data type and structures • Syntax considerations 9/27/2022 6
  • 8.  Makes the language easy to learn and read.  Meaning is context independent. Pointers should be able to point to any type of variable or data structure. The lack of Orthogonality leads to exceptions to the rules of the language.  A relatively small set of primitive constructs can be combined in a relatively small number of ways to build the control and data structures of the language.  Every possible combination is legal and meaningful.  The more orthogonal the design of a language, the fewer exceptions the language rules require.  The most orthogonal programming language is ALGOL 68. Every language construct has a type, and there are no restrictions on those types.  This form of Orthogonality leads to unnecessary complexity. 9/27/2022 8
  • 9.  It became widely recognized that indiscriminate use of goto statements severely reduced program readability.  Basic and Fortran in the early 70s lacked the control statements that allow strong restrictions on the use of goto, so writing highly readable programs in those languages was difficult.  Since then, languages have included sufficient control structures.  The control statement design of a language is now a less important factor in readability than it was in the past. 9/27/2022 9
  • 10.  The presence of adequate facilities for defining data types and data structures in a language is another significant aid to reliability. Ex: Boolean type. ■ timeout = 1 or ■ timeout = true 9/27/2022 10
  • 11.  The syntax of the elements of a language has a significant effect on readability.  The following are examples of syntactic design choices that affect readability:  Identifiers forms: Restricting identifiers to very short lengths detracts from readability. ANSI BASIC (1978) an identifiers could consist only of a single letter of a single letter followed by a single digit.  Special Words: Program appearance and thus program readability are strongly influenced by the forms of a language’s special words.  Ex: while, class, for. C uses braces for pairing control structures. It is difficult to determine which group is being ended. Fortran 95 allows programmers to use special names as legal variable names.  Form and Meaning: Designing statements so that their appearance at least partially indicates their purpose is an obvious aid to readability.  Semantic should follow directly from syntax, or form. 9/27/2022 11
  • 12.  How easy is it to write programs in the language?  Factors effecting Writability:  Simplicity and Orthogonality  Support for abstraction  Expressivity  Fit for the domain and problem 9/27/2022 12
  • 13.  It is a measure of how easily a language can be used to create programs for a chosen problem domain.  Most of the language characteristics that affect readability also affect Writability.  Simplicity and Orthogonality ◦ A smaller number of primitive constructs and a consistent set of rules for combining them is much better than simply having a large number of primitives. ◦ Support for abstraction  Abstraction means the ability to define and then use complicated structures or operations in ways that allow many of the details to be ignored.  A process abstraction is the use of a subprogram to implement a sort algorithm that is required several times in a program instead of replicating it in all places where it is needed.  Expressivity  It means that a language has relatively convenient, rather than cumbersome, ways of specifying computations. ○  Ex: ++count ⇔ count = count + 1 // more convenient and shorter 9/27/2022 13
  • 14. Factors:  Type checking  Exception handling  Aliasing  Readability and Writability 9/27/2022 14
  • 15.  A program is said to be reliable if it performs to its specifications under all conditions.  Type checking: is simply testing for type errors in a given program, either by the compiler or during program execution.  The earlier errors are detected, the less expensive it is to make the required repairs. Java requires type checking of nearly all variables and expressions at compile time.  Exception handling: the ability to intercept run-time errors, take corrective measures, and then continue is a great aid to reliability.  Aliasing: it is having two or more distinct referencing methods, or names, for the same memory cell.  It is now widely accepted that aliasing is a dangerous feature in a language.  Readability and Writability: Both readability and Writability influenced reliability. 9/27/2022 15
  • 16.  Categories  Programmer training  Software creation  Compilation  Execution  Compiler cost  Poor reliability  Maintenance 9/27/2022 16