SlideShare uma empresa Scribd logo
1 de 23
Comparative Study of Programming
Languages
Comp-6411
Team_15 
Ishan Monga(27720696)
Gurkamal Singh(27275978)
Simranjeet Singh(27376782)
Outline
 Why comparison
 How and approach
 Grouping of Languages
 Glimpse of outcomes
 Intended Use
 Learning
 Conclusion
 Choosing programming languages is paramount for 
all  project  in  any  organisation,  especially  when  the 
project involves long term support and requires huge 
number  of  people  to  build  for  instance  banking 
application. 
 This choice become more  difficult  when  number of 
languages are available for same work. 
Why Comparison is required?
 Choosing programming languages is paramount for all
projects in any organisation, especially when the project
involves long term support and requires huge number of
people to build, for instance banking application.
 This choice becomes more difficult when a number of
languages are available for same task.
Why Comparison [cont..]
 To know more about syntax, usability, learnability curve,
support, features, efficiency, maintenance, exception
handling, portability
 To cater problem domain requirements
 Infrastructure requirements and resource availablity
How Languages can be Compared?
 To know more about syntax, usability, learning curve,
support, features, efficiently, maintenance, exception
handling, portability
 To cater problem domain requirements
 Infrastructure requirements
Approach for comparison
Languages are divided into 3 groups.
Implemented BFS/DFS algorithms
Implemented file Read/Write operations
Primary concern was to compare the selected languages
based on evaluation criteria.
Comparison Criteria
 Readability
 Writeability
 Line of Code
 Web development
 Ease of Learning
 Execution Time
 Memory Consumption
 Exception Handling
 Security
 Verbosity
 Portability
 Intended Use in industry
Grouping for comparison
Some glimpse of group 1 comparison
Java
Faster
Web Development is easy in java as compare to AspectJ
Maintenance is easy in java
Error are more self-explanatory which makes debugging easier
Java is architectural neutral, it is independent of hardware
Verbose
Aspect J
Mainly used for the applications that involves transaction.
Highly secure
No support for functional programming
Java platform compatible
Easy to learn and use
Group 1 (cont..)
Scala
Interpreted on JVM
Scala is a type safe programming language
Line of code is very less
Scala has built-in feature for functional programming which has light
weight syntax
Supports high order and nested functions.
Everything is an expression
Built-in support for pattern matching
Group 1 (cont..)
Python
Compilation is slower than java
Variable declaration is not required
Dynamic Type System
Python used white space indentation
Group 2 Comparison
Ada
Safer and Secure
Support Concurrency
Modularity and Maintainability
Development Cost
Group 2 (cont..)
Pascal
Support Verbosity as code use more English words rather than symbol.
Reliable due to strong exception handling and strongly typed.
Ease to learn due to simple programming style
Fortran
Less line of code
Performance is good due to better array handling and distributed
memory and shared memory parallelism.
Support Scientific numerical computing.
Group 3 Comparison
C
 Efficient in Execution Time
 Efficient in Memory Consumption
 Lesser Line of Code
C#
 IntelliSense support
 Drag drop features for quick development
 Shorter Development time
 Multi-Paradigm
 Error Handling
Group 3 (cont..)
VB .NET
Syntax similar to English language.
Easily Readable and Writeable
IntelliSense Support
Multi-paradigm
Shorter Development time
Intended Use of Selected Languages
Language Intended Use in Industry
Scala It is used to power the busiest websites in the world, including Twitter,
Netflix, Tumblr, LinkedIn, Foursquare, and many more.
Scala is also used in spacecraft telemetry data display, storage and
analysis for European space
Python Python is used in testing of intel microprocessor chips.
Building video games with PyGame library.
AspectJ The motivation behind Aspect J is to cater the issues and concerns that
are not well captured in traditional programming languages. For
instance if you want to implement security policy in the project. Some
application use Aspect J for logging purpose.
Java Java is very versatile language and is used in many business domains for
instance financial services, trading system, portals, and insurance
applications.
Many games are also developed on java platform
Some big business that use java are ebay, amazon, google and Netflix.
Intended Use[ contd..]
Language Intended Use in Industry
FORTRAN This language is mainly used in computation intensive area for instance,
computational fluid dynamics, finite element analysis and numerical
weather prediction.
Ada Ada was originally targeted for embedded and real-time systems but
later versions of Ada has provided support for numerical, financial and
object oriented concepts. Ada is recommended for highly critical
applications which involves serious consequences like accidents, deaths
and financial loss. Use of Ada can be find in domain of avionics,
railways, military and banking.
Pascal Initially, Pascal was intended to teach students structured programming.
Later, Object Pascal is used to develop window application with cross
compilation ability. In this same code can be compiled to mac, iOS and
android
Skype, Apple Lisa, total Commander, embedded systems and various
PC games are implemented in Pascal.
Intended Use[ contd..]
Language Intended Use in Industry
C# C# is mainly used for developing business applications and it is very much
used as web language. It is also gaining popularity in game programming with
the XNA framework plugin.
VB .Net It is multi paradigm language and is highly used for web application and web
services development
C The main intend of c is for the system development work, particularly for the
operating system because the code runs as fast as written in assembly
language
Some domain that use c are following
•Operating Systems
•Network Drivers
•Database
•Assemblers
•Compilers etc.
Learning from Comparing Languages
 Awareness of different programming techniques
that will help to build better applications.
 Open our mind towards learning new things in short
time of span.
 Mindset is been developed for comparing
the things logically with some evaluation criteria.
 Most importantly, get taste of 10 programming
languages in a restricted time span
 Working in team under stringent deadlines.
Conclusion
 The conclusion drawn from the experimentation is that there is no
standard criteria from which one language can be proved better than the
other.
 A healthy comparison can be done based on different evaluation
criteria.
 The choice of language mainly depends on the problem domain and the
resources available.
 No language is better than other
 Every language has its pros and cons
 Selection mainly depends on problem domain and resources available
“Alanguagethatdoesn’thaveeverythingisactuallyeasiertoprograminthansomethatdo.”
Dennis M. Ritchie
References
 [http://www.scala-lang.org/old/node/1658].
 https://www.pinterest.com/itvaleria/programming-fun/
 [http://www.scala-lang.org/old/node/1658].
 [http://www.le.ac.uk/users/rjm1/cotter/page_05.htm].
Thank You!

Mais conteúdo relacionado

Mais procurados

Gain Deep Visibility into APIs and Integrations with Anypoint Monitoring
Gain Deep Visibility into APIs and Integrations with Anypoint MonitoringGain Deep Visibility into APIs and Integrations with Anypoint Monitoring
Gain Deep Visibility into APIs and Integrations with Anypoint MonitoringInfluxData
 
Cloud Native Application
Cloud Native ApplicationCloud Native Application
Cloud Native ApplicationVMUG IT
 
Kubernetes Networking with Cilium - Deep Dive
Kubernetes Networking with Cilium - Deep DiveKubernetes Networking with Cilium - Deep Dive
Kubernetes Networking with Cilium - Deep DiveMichal Rostecki
 
Introduction to jenkins
Introduction to jenkinsIntroduction to jenkins
Introduction to jenkinsAbe Diaz
 
Rundeck Overview
Rundeck OverviewRundeck Overview
Rundeck OverviewRundeck
 
How Kubernetes helps Devops
How Kubernetes helps DevopsHow Kubernetes helps Devops
How Kubernetes helps DevopsSreenivas Makam
 
An Introduction To Jenkins
An Introduction To JenkinsAn Introduction To Jenkins
An Introduction To JenkinsKnoldus Inc.
 
OpenStack Architecture and Use Cases
OpenStack Architecture and Use CasesOpenStack Architecture and Use Cases
OpenStack Architecture and Use CasesJalal Mostafa
 
[KubeCon EU 2022] Running containerd and k3s on macOS
[KubeCon EU 2022] Running containerd and k3s on macOS[KubeCon EU 2022] Running containerd and k3s on macOS
[KubeCon EU 2022] Running containerd and k3s on macOSAkihiro Suda
 
Introduction to Kubernetes and Google Container Engine (GKE)
Introduction to Kubernetes and Google Container Engine (GKE)Introduction to Kubernetes and Google Container Engine (GKE)
Introduction to Kubernetes and Google Container Engine (GKE)Opsta
 
Linux Environment- Linux vs Unix
Linux Environment- Linux vs UnixLinux Environment- Linux vs Unix
Linux Environment- Linux vs UnixTrinity Dwarka
 
Exposing and Controlling Kafka Event Streaming with Kong Konnect Enterprise |...
Exposing and Controlling Kafka Event Streaming with Kong Konnect Enterprise |...Exposing and Controlling Kafka Event Streaming with Kong Konnect Enterprise |...
Exposing and Controlling Kafka Event Streaming with Kong Konnect Enterprise |...HostedbyConfluent
 
Managing Kubernetes Cost and Performance with NGINX & Kubecost
Managing Kubernetes Cost and Performance with NGINX & KubecostManaging Kubernetes Cost and Performance with NGINX & Kubecost
Managing Kubernetes Cost and Performance with NGINX & KubecostNGINX, Inc.
 
Introduction to Docker - 2017
Introduction to Docker - 2017Introduction to Docker - 2017
Introduction to Docker - 2017Docker, Inc.
 
Ml ops intro session
Ml ops   intro sessionMl ops   intro session
Ml ops intro sessionAvinash Patil
 
Serving BERT Models in Production with TorchServe
Serving BERT Models in Production with TorchServeServing BERT Models in Production with TorchServe
Serving BERT Models in Production with TorchServeNidhin Pattaniyil
 
Cloud Native Landscape (CNCF and OCI)
Cloud Native Landscape (CNCF and OCI)Cloud Native Landscape (CNCF and OCI)
Cloud Native Landscape (CNCF and OCI)Chris Aniszczyk
 

Mais procurados (20)

Gain Deep Visibility into APIs and Integrations with Anypoint Monitoring
Gain Deep Visibility into APIs and Integrations with Anypoint MonitoringGain Deep Visibility into APIs and Integrations with Anypoint Monitoring
Gain Deep Visibility into APIs and Integrations with Anypoint Monitoring
 
Cloud Native Application
Cloud Native ApplicationCloud Native Application
Cloud Native Application
 
Kubernetes Networking with Cilium - Deep Dive
Kubernetes Networking with Cilium - Deep DiveKubernetes Networking with Cilium - Deep Dive
Kubernetes Networking with Cilium - Deep Dive
 
Introduction to jenkins
Introduction to jenkinsIntroduction to jenkins
Introduction to jenkins
 
Jenkins Pipelines
Jenkins PipelinesJenkins Pipelines
Jenkins Pipelines
 
Rundeck Overview
Rundeck OverviewRundeck Overview
Rundeck Overview
 
Jenkins-CI
Jenkins-CIJenkins-CI
Jenkins-CI
 
How Kubernetes helps Devops
How Kubernetes helps DevopsHow Kubernetes helps Devops
How Kubernetes helps Devops
 
An Introduction To Jenkins
An Introduction To JenkinsAn Introduction To Jenkins
An Introduction To Jenkins
 
DevOps seminar ppt
DevOps seminar ppt DevOps seminar ppt
DevOps seminar ppt
 
OpenStack Architecture and Use Cases
OpenStack Architecture and Use CasesOpenStack Architecture and Use Cases
OpenStack Architecture and Use Cases
 
[KubeCon EU 2022] Running containerd and k3s on macOS
[KubeCon EU 2022] Running containerd and k3s on macOS[KubeCon EU 2022] Running containerd and k3s on macOS
[KubeCon EU 2022] Running containerd and k3s on macOS
 
Introduction to Kubernetes and Google Container Engine (GKE)
Introduction to Kubernetes and Google Container Engine (GKE)Introduction to Kubernetes and Google Container Engine (GKE)
Introduction to Kubernetes and Google Container Engine (GKE)
 
Linux Environment- Linux vs Unix
Linux Environment- Linux vs UnixLinux Environment- Linux vs Unix
Linux Environment- Linux vs Unix
 
Exposing and Controlling Kafka Event Streaming with Kong Konnect Enterprise |...
Exposing and Controlling Kafka Event Streaming with Kong Konnect Enterprise |...Exposing and Controlling Kafka Event Streaming with Kong Konnect Enterprise |...
Exposing and Controlling Kafka Event Streaming with Kong Konnect Enterprise |...
 
Managing Kubernetes Cost and Performance with NGINX & Kubecost
Managing Kubernetes Cost and Performance with NGINX & KubecostManaging Kubernetes Cost and Performance with NGINX & Kubecost
Managing Kubernetes Cost and Performance with NGINX & Kubecost
 
Introduction to Docker - 2017
Introduction to Docker - 2017Introduction to Docker - 2017
Introduction to Docker - 2017
 
Ml ops intro session
Ml ops   intro sessionMl ops   intro session
Ml ops intro session
 
Serving BERT Models in Production with TorchServe
Serving BERT Models in Production with TorchServeServing BERT Models in Production with TorchServe
Serving BERT Models in Production with TorchServe
 
Cloud Native Landscape (CNCF and OCI)
Cloud Native Landscape (CNCF and OCI)Cloud Native Landscape (CNCF and OCI)
Cloud Native Landscape (CNCF and OCI)
 

Semelhante a Comparative Study of programming Languages

The Concept Of Abstract Data Types
The Concept Of Abstract Data TypesThe Concept Of Abstract Data Types
The Concept Of Abstract Data TypesKaty Allen
 
Comparative study of programming languages
Comparative study of programming languagesComparative study of programming languages
Comparative study of programming languagesPrabhat singh
 
12 best programming languages for web & app development
12 best programming languages for web & app development12 best programming languages for web & app development
12 best programming languages for web & app developmentBiztech Consulting & Solutions
 
What is the best programming language to learn if you want to work on the blo...
What is the best programming language to learn if you want to work on the blo...What is the best programming language to learn if you want to work on the blo...
What is the best programming language to learn if you want to work on the blo...BlockchainX
 
A Research Study of Data Collection and Analysis of Semantics of Programming ...
A Research Study of Data Collection and Analysis of Semantics of Programming ...A Research Study of Data Collection and Analysis of Semantics of Programming ...
A Research Study of Data Collection and Analysis of Semantics of Programming ...IRJET Journal
 
A novel data type architecture support for programming languages
A novel data type architecture support for programming languagesA novel data type architecture support for programming languages
A novel data type architecture support for programming languagesijpla
 
Java report by ravi raja
Java report by ravi rajaJava report by ravi raja
Java report by ravi rajaRaviRaja55
 
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENTPROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENTijdpsjournal
 
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENTPROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENTijdpsjournal
 
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENTPROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENTijdpsjournal
 
ICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.doc
ICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.docICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.doc
ICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.docAmanGunner
 
The Economics of OptimJ
The Economics of OptimJThe Economics of OptimJ
The Economics of OptimJPatrick Viry
 
Top Automation Programming Languages of 2023.pdf
Top Automation Programming Languages of 2023.pdfTop Automation Programming Languages of 2023.pdf
Top Automation Programming Languages of 2023.pdfpCloudy
 
Top Programming Languages of 2020
Top Programming Languages of 2020Top Programming Languages of 2020
Top Programming Languages of 2020Ikbal Ahmed
 
Recent Trends in Translation of Programming Languages using NLP Approaches
Recent Trends in Translation of Programming Languages using NLP ApproachesRecent Trends in Translation of Programming Languages using NLP Approaches
Recent Trends in Translation of Programming Languages using NLP ApproachesIRJET Journal
 

Semelhante a Comparative Study of programming Languages (20)

The Concept Of Abstract Data Types
The Concept Of Abstract Data TypesThe Concept Of Abstract Data Types
The Concept Of Abstract Data Types
 
Comparative study of programming languages
Comparative study of programming languagesComparative study of programming languages
Comparative study of programming languages
 
12 best programming languages for web & app development
12 best programming languages for web & app development12 best programming languages for web & app development
12 best programming languages for web & app development
 
Training report
Training reportTraining report
Training report
 
What is the best programming language to learn if you want to work on the blo...
What is the best programming language to learn if you want to work on the blo...What is the best programming language to learn if you want to work on the blo...
What is the best programming language to learn if you want to work on the blo...
 
A Research Study of Data Collection and Analysis of Semantics of Programming ...
A Research Study of Data Collection and Analysis of Semantics of Programming ...A Research Study of Data Collection and Analysis of Semantics of Programming ...
A Research Study of Data Collection and Analysis of Semantics of Programming ...
 
A novel data type architecture support for programming languages
A novel data type architecture support for programming languagesA novel data type architecture support for programming languages
A novel data type architecture support for programming languages
 
History Of C Essay
History Of C EssayHistory Of C Essay
History Of C Essay
 
Java report by ravi raja
Java report by ravi rajaJava report by ravi raja
Java report by ravi raja
 
Programming
ProgrammingProgramming
Programming
 
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENTPROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
 
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENTPROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
 
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENTPROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
PROGRAMMING REQUESTS/RESPONSES WITH GREATFREE IN THE CLOUD ENVIRONMENT
 
ICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.doc
ICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.docICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.doc
ICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.doc
 
Unit 1
Unit 1Unit 1
Unit 1
 
JAVA
JAVAJAVA
JAVA
 
The Economics of OptimJ
The Economics of OptimJThe Economics of OptimJ
The Economics of OptimJ
 
Top Automation Programming Languages of 2023.pdf
Top Automation Programming Languages of 2023.pdfTop Automation Programming Languages of 2023.pdf
Top Automation Programming Languages of 2023.pdf
 
Top Programming Languages of 2020
Top Programming Languages of 2020Top Programming Languages of 2020
Top Programming Languages of 2020
 
Recent Trends in Translation of Programming Languages using NLP Approaches
Recent Trends in Translation of Programming Languages using NLP ApproachesRecent Trends in Translation of Programming Languages using NLP Approaches
Recent Trends in Translation of Programming Languages using NLP Approaches
 

Último

%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...masabamasaba
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...masabamasaba
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...masabamasaba
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park masabamasaba
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...masabamasaba
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park masabamasaba
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyviewmasabamasaba
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareJim McKeeth
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionOnePlan Solutions
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfonteinmasabamasaba
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesVictorSzoltysek
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Hararemasabamasaba
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 

Último (20)

%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 

Comparative Study of programming Languages

  • 1. Comparative Study of Programming Languages Comp-6411 Team_15  Ishan Monga(27720696) Gurkamal Singh(27275978) Simranjeet Singh(27376782)
  • 2. Outline  Why comparison  How and approach  Grouping of Languages  Glimpse of outcomes  Intended Use  Learning  Conclusion
  • 3.  Choosing programming languages is paramount for  all  project  in  any  organisation,  especially  when  the  project involves long term support and requires huge  number  of  people  to  build  for  instance  banking  application.   This choice become more  difficult  when  number of  languages are available for same work. 
  • 4. Why Comparison is required?  Choosing programming languages is paramount for all projects in any organisation, especially when the project involves long term support and requires huge number of people to build, for instance banking application.  This choice becomes more difficult when a number of languages are available for same task.
  • 5. Why Comparison [cont..]  To know more about syntax, usability, learnability curve, support, features, efficiency, maintenance, exception handling, portability  To cater problem domain requirements  Infrastructure requirements and resource availablity
  • 6. How Languages can be Compared?  To know more about syntax, usability, learning curve, support, features, efficiently, maintenance, exception handling, portability  To cater problem domain requirements  Infrastructure requirements
  • 7. Approach for comparison Languages are divided into 3 groups. Implemented BFS/DFS algorithms Implemented file Read/Write operations Primary concern was to compare the selected languages based on evaluation criteria.
  • 8. Comparison Criteria  Readability  Writeability  Line of Code  Web development  Ease of Learning  Execution Time  Memory Consumption  Exception Handling  Security  Verbosity  Portability  Intended Use in industry
  • 10. Some glimpse of group 1 comparison Java Faster Web Development is easy in java as compare to AspectJ Maintenance is easy in java Error are more self-explanatory which makes debugging easier Java is architectural neutral, it is independent of hardware Verbose Aspect J Mainly used for the applications that involves transaction. Highly secure No support for functional programming Java platform compatible Easy to learn and use
  • 11. Group 1 (cont..) Scala Interpreted on JVM Scala is a type safe programming language Line of code is very less Scala has built-in feature for functional programming which has light weight syntax Supports high order and nested functions. Everything is an expression Built-in support for pattern matching
  • 12. Group 1 (cont..) Python Compilation is slower than java Variable declaration is not required Dynamic Type System Python used white space indentation
  • 13. Group 2 Comparison Ada Safer and Secure Support Concurrency Modularity and Maintainability Development Cost
  • 14. Group 2 (cont..) Pascal Support Verbosity as code use more English words rather than symbol. Reliable due to strong exception handling and strongly typed. Ease to learn due to simple programming style Fortran Less line of code Performance is good due to better array handling and distributed memory and shared memory parallelism. Support Scientific numerical computing.
  • 15. Group 3 Comparison C  Efficient in Execution Time  Efficient in Memory Consumption  Lesser Line of Code C#  IntelliSense support  Drag drop features for quick development  Shorter Development time  Multi-Paradigm  Error Handling
  • 16. Group 3 (cont..) VB .NET Syntax similar to English language. Easily Readable and Writeable IntelliSense Support Multi-paradigm Shorter Development time
  • 17. Intended Use of Selected Languages Language Intended Use in Industry Scala It is used to power the busiest websites in the world, including Twitter, Netflix, Tumblr, LinkedIn, Foursquare, and many more. Scala is also used in spacecraft telemetry data display, storage and analysis for European space Python Python is used in testing of intel microprocessor chips. Building video games with PyGame library. AspectJ The motivation behind Aspect J is to cater the issues and concerns that are not well captured in traditional programming languages. For instance if you want to implement security policy in the project. Some application use Aspect J for logging purpose. Java Java is very versatile language and is used in many business domains for instance financial services, trading system, portals, and insurance applications. Many games are also developed on java platform Some big business that use java are ebay, amazon, google and Netflix.
  • 18. Intended Use[ contd..] Language Intended Use in Industry FORTRAN This language is mainly used in computation intensive area for instance, computational fluid dynamics, finite element analysis and numerical weather prediction. Ada Ada was originally targeted for embedded and real-time systems but later versions of Ada has provided support for numerical, financial and object oriented concepts. Ada is recommended for highly critical applications which involves serious consequences like accidents, deaths and financial loss. Use of Ada can be find in domain of avionics, railways, military and banking. Pascal Initially, Pascal was intended to teach students structured programming. Later, Object Pascal is used to develop window application with cross compilation ability. In this same code can be compiled to mac, iOS and android Skype, Apple Lisa, total Commander, embedded systems and various PC games are implemented in Pascal.
  • 19. Intended Use[ contd..] Language Intended Use in Industry C# C# is mainly used for developing business applications and it is very much used as web language. It is also gaining popularity in game programming with the XNA framework plugin. VB .Net It is multi paradigm language and is highly used for web application and web services development C The main intend of c is for the system development work, particularly for the operating system because the code runs as fast as written in assembly language Some domain that use c are following •Operating Systems •Network Drivers •Database •Assemblers •Compilers etc.
  • 20. Learning from Comparing Languages  Awareness of different programming techniques that will help to build better applications.  Open our mind towards learning new things in short time of span.  Mindset is been developed for comparing the things logically with some evaluation criteria.  Most importantly, get taste of 10 programming languages in a restricted time span  Working in team under stringent deadlines.
  • 21. Conclusion  The conclusion drawn from the experimentation is that there is no standard criteria from which one language can be proved better than the other.  A healthy comparison can be done based on different evaluation criteria.  The choice of language mainly depends on the problem domain and the resources available.  No language is better than other  Every language has its pros and cons  Selection mainly depends on problem domain and resources available “Alanguagethatdoesn’thaveeverythingisactuallyeasiertoprograminthansomethatdo.” Dennis M. Ritchie
  • 22. References  [http://www.scala-lang.org/old/node/1658].  https://www.pinterest.com/itvaleria/programming-fun/  [http://www.scala-lang.org/old/node/1658].  [http://www.le.ac.uk/users/rjm1/cotter/page_05.htm].