SlideShare a Scribd company logo
COBOL Background
 Released in 1959
 Grace Hopper
 Industry, universities, and government collaboration
 Cold War pressures
 80% of business transactions
 65% of all code is in COBOL
COBOL – Why?
 Software Lifecycle
 Cheaper to maintain
 Y2K
 Self-documenting code
 Verbose
 “IF a < b AND > c …”
 Divisions
COBOL – Why?
 Divisions
 Identification Division
 Environment Division
 Data Division
 Procedure Division
COBOL – Data Division
 Data Division
 Pictures
 9 = digit
 X = any character
 A = alphabetic character
 V = decimal point position
 S = sign
 Repeats
 PIC 9 (4) = 9999
Cobol, lisp, and python
COBOL – Groups and Elementary data
Cobol, lisp, and python
COBOL
 Reliability
 Stood test of time
 Has “ALTER X TO PROCEED TO Y” (a negative)
 Uses GOTO statements (a negative)
 Today
 Cross platform: OpenCOBOL C translation
 IDEs (Net Express)
COBOL - Summary
 Readability
 Writability
 Reliability
 Portability
LISP
 LISt Processing
 List-based language
 2nd High-level language
 1958 – John McCarthy for MIT
Cobol, lisp, and python
LISP - Syntax
 Function call: “(fun arg1 arg2)”
 (+ 1 2 3)
 Lists
 (list ‘3 ‘7 ‘apples)
 (3 7 apples)
 (list ‘13 list(‘3 ‘5))
 (13 (3 5))
LISP – Innovations
 Garbage Collection
 If else statements
 Recursion
LISP – Linked Lists
 Car (first)
 Cdr (rest)
Cobol, lisp, and python
LISP - Examples
 If then else
 (if nil
(list ‘2 ‘3)
(list ‘5 ‘6))
 One line variant:
 (if nil (list ‘2 ‘3) (list ‘5 ‘6))
LISP - Examples
 Factorial
 (defun factorial (n)
(if (<= n 1)
1
(* n (factorial (- n 1)))))
 One line variant:
 (defun factorial (n) (if (<= n 1) 1 (* n (factorial (- n 1)))))
LISP - Examples
 Recursive List Size
 (defun recursiveSize (L)
(if (null L)
0
(1+ (recursiveSize(rest L)))))
LISP - Examples
 Recursive List Sum with “LET”
 (defun sum (L)
(if (null L)
0
(let
((S1 (first L))
(S2 (sum (rest L))))
+ S1 S2)))
LISP- Summary and Comparison
 Readability
 Writability
 Reliability
Python
 Developed early 1990’s
 Guido van Rossum
 ABC language
 Python 2.0
 2000
 Community-supported -> reliability
 Modular; community expandable
 Python 3.0
 2008
Python – Readability is Key
 Design goal
 One way to do things
 Clarity over clever code
 Whitespace over braces
 “pass” for No-Op
Python
 Writability
 Similar to other OO languages
 Verification support
 Interpreted, assert, no statements in conditions
 Clean style
 Few keywords
 Simple grammar -> few ways to do something
Python
 Comparisons
 == tests values, not references
 A < b <= C works properly
 Ternary operator readable
 “a if b else c”
Python
 System Requirements
 Cross platform
 Python Interpreter
 Simplicity
 Small core language
 Large libaraies
Python - Examples
 a = 15
if(a < 10):
print(“input less than 10”)
elif(10 < a < 20):
print(“input between 10 and 20”)
else:
print(“input greater than 20”)
Python - Examples
 Function definition
def greatest(a, b, c):
largest = a if a > b else b
largest = largest if largest > c else c
print(largest)
 Function call
greatest(7, 3, 14)
14
Python - Examples
 Determine if prime
def isPrime(num):
prime = True
for i in range(2, (num / 2) + 1):
if num % i == 0:
prime = False
return prime
def tenPrimes():
list = []
count = 0
current = 2
#store the first 10 primes in a list
while count < 10:
if isPrime(current):
count += 1
list.append(current)
current = current + 1
#print the list
for element in list:
print(element)
Python - Summary and Comparison
 Readability
 Writability
 Reliability

More Related Content

PPTX
Regular expression to NFA (Nondeterministic Finite Automata)
Niloy Biswas
 
PPTX
C++ history session 00 history
Arun Prakash
 
PDF
Lisp(Lots of Irritating Superfluous Parentheses)
Pivorak MeetUp
 
PDF
Linux Administration (Revised Syllabus) [QP / May - 2017]
Mumbai B.Sc.IT Study
 
PDF
Internet Technologies (October – 2016) [Question Paper | IDOL: Revised Course]
Mumbai B.Sc.IT Study
 
PDF
Year when lambda functions were introduced in various languages
Philip Schwarz
 
PDF
Internet Technology (May – 2016) [Revised Syllabus | Question Paper]
Mumbai B.Sc.IT Study
 
PDF
Linux Administration (Revised Syllabus) [QP / May - 2016]
Mumbai B.Sc.IT Study
 
Regular expression to NFA (Nondeterministic Finite Automata)
Niloy Biswas
 
C++ history session 00 history
Arun Prakash
 
Lisp(Lots of Irritating Superfluous Parentheses)
Pivorak MeetUp
 
Linux Administration (Revised Syllabus) [QP / May - 2017]
Mumbai B.Sc.IT Study
 
Internet Technologies (October – 2016) [Question Paper | IDOL: Revised Course]
Mumbai B.Sc.IT Study
 
Year when lambda functions were introduced in various languages
Philip Schwarz
 
Internet Technology (May – 2016) [Revised Syllabus | Question Paper]
Mumbai B.Sc.IT Study
 
Linux Administration (Revised Syllabus) [QP / May - 2016]
Mumbai B.Sc.IT Study
 

What's hot (14)

PPT
History of c++
Ihsan Ali
 
PPT
Pda to cfg h2
Rajendran
 
PPTX
A brief introduction to lisp language
David Gu
 
PPTX
presentation on C++ basics by prince kumar kushwaha
Rustamji Institute of Technology
 
PDF
Learn a language : LISP
Devnology
 
PPTX
3.5 equivalence of pushdown automata and cfl
Sampath Kumar S
 
PDF
Clojure presentation
Karthik Raghunahtan
 
PPTX
Lisp
huzaifa ramzan
 
PPTX
Pi - System Programming Language
Philip
 
PDF
Los Angeles R users group - July 12 2011 - Part 2
rusersla
 
PDF
[Question Paper] Linux Administration (75:25 Pattern) [November / 2015]
Mumbai B.Sc.IT Study
 
PPT
History of c++
Ihsan Ali
 
PPTX
Intro of C
rama shankar
 
PDF
Rcpp
Ajay Ohri
 
History of c++
Ihsan Ali
 
Pda to cfg h2
Rajendran
 
A brief introduction to lisp language
David Gu
 
presentation on C++ basics by prince kumar kushwaha
Rustamji Institute of Technology
 
Learn a language : LISP
Devnology
 
3.5 equivalence of pushdown automata and cfl
Sampath Kumar S
 
Clojure presentation
Karthik Raghunahtan
 
Pi - System Programming Language
Philip
 
Los Angeles R users group - July 12 2011 - Part 2
rusersla
 
[Question Paper] Linux Administration (75:25 Pattern) [November / 2015]
Mumbai B.Sc.IT Study
 
History of c++
Ihsan Ali
 
Intro of C
rama shankar
 
Rcpp
Ajay Ohri
 
Ad

Similar to Cobol, lisp, and python (20)

PPTX
Report about the LISP Programming Language
maldosmelandrew
 
PPTX
LISP: назад в будущее, Микола Мозговий
Sigma Software
 
PPT
intro.ppt
Luis Soza
 
PPT
Lisp, An Introduction.ppt
Luis Soza
 
PPT
intro.ppt
AishwaryaKulal1
 
PPT
INTRODUCTION TO LISP
Nilt1234
 
PPTX
C language
Robo India
 
PPT
FALLSEM2022-23_ITA3007_ETH_VL2022230100613_Reference_Material_I_23-09-2022_py...
admin369652
 
PPTX
AI Programming language (LISP)
Dr. SURBHI SAROHA
 
PPTX
Introduction to Python Part-1
Devashish Kumar
 
PPTX
2015 bioinformatics python_introduction_wim_vancriekinge_vfinal
Prof. Wim Van Criekinge
 
PPTX
LISP: Introduction To Lisp
LISP Content
 
PPTX
LISP: Introduction to lisp
DataminingTools Inc
 
PPTX
Lecture 2 lisp-Overview
Student at University Of Malakand, Pakistan
 
PPTX
Cobol programming language
Burhan Ahmed
 
PDF
1. Introduction to Programming concepts LICSTA.pdf
FoghoIvo
 
PPT
python language programming presentation
lbisht2
 
PPT
Introduction Programming Languages
Manish Kharotia
 
PDF
Programming For Problem Solving Lecture Notes
Sreedhar Chowdam
 
Report about the LISP Programming Language
maldosmelandrew
 
LISP: назад в будущее, Микола Мозговий
Sigma Software
 
intro.ppt
Luis Soza
 
Lisp, An Introduction.ppt
Luis Soza
 
intro.ppt
AishwaryaKulal1
 
INTRODUCTION TO LISP
Nilt1234
 
C language
Robo India
 
FALLSEM2022-23_ITA3007_ETH_VL2022230100613_Reference_Material_I_23-09-2022_py...
admin369652
 
AI Programming language (LISP)
Dr. SURBHI SAROHA
 
Introduction to Python Part-1
Devashish Kumar
 
2015 bioinformatics python_introduction_wim_vancriekinge_vfinal
Prof. Wim Van Criekinge
 
LISP: Introduction To Lisp
LISP Content
 
LISP: Introduction to lisp
DataminingTools Inc
 
Cobol programming language
Burhan Ahmed
 
1. Introduction to Programming concepts LICSTA.pdf
FoghoIvo
 
python language programming presentation
lbisht2
 
Introduction Programming Languages
Manish Kharotia
 
Programming For Problem Solving Lecture Notes
Sreedhar Chowdam
 
Ad

More from Hoang Nguyen (20)

PPTX
Rest api to integrate with your site
Hoang Nguyen
 
PPTX
How to build a rest api
Hoang Nguyen
 
PPTX
Api crash
Hoang Nguyen
 
PPTX
Smm and caching
Hoang Nguyen
 
PPTX
Optimizing shared caches in chip multiprocessors
Hoang Nguyen
 
PPTX
How analysis services caching works
Hoang Nguyen
 
PPTX
Hardware managed cache
Hoang Nguyen
 
PPTX
Directory based cache coherence
Hoang Nguyen
 
PPTX
Cache recap
Hoang Nguyen
 
PPTX
Python your new best friend
Hoang Nguyen
 
PPTX
Python language data types
Hoang Nguyen
 
PPTX
Python basics
Hoang Nguyen
 
PPTX
Programming for engineers in python
Hoang Nguyen
 
PPTX
Learning python
Hoang Nguyen
 
PPTX
Extending burp with python
Hoang Nguyen
 
PPT
Object oriented programming using c++
Hoang Nguyen
 
PPTX
Object oriented analysis
Hoang Nguyen
 
PPTX
Object model
Hoang Nguyen
 
PPTX
Data structures and algorithms
Hoang Nguyen
 
PPT
Data abstraction the walls
Hoang Nguyen
 
Rest api to integrate with your site
Hoang Nguyen
 
How to build a rest api
Hoang Nguyen
 
Api crash
Hoang Nguyen
 
Smm and caching
Hoang Nguyen
 
Optimizing shared caches in chip multiprocessors
Hoang Nguyen
 
How analysis services caching works
Hoang Nguyen
 
Hardware managed cache
Hoang Nguyen
 
Directory based cache coherence
Hoang Nguyen
 
Cache recap
Hoang Nguyen
 
Python your new best friend
Hoang Nguyen
 
Python language data types
Hoang Nguyen
 
Python basics
Hoang Nguyen
 
Programming for engineers in python
Hoang Nguyen
 
Learning python
Hoang Nguyen
 
Extending burp with python
Hoang Nguyen
 
Object oriented programming using c++
Hoang Nguyen
 
Object oriented analysis
Hoang Nguyen
 
Object model
Hoang Nguyen
 
Data structures and algorithms
Hoang Nguyen
 
Data abstraction the walls
Hoang Nguyen
 

Recently uploaded (20)

PPTX
How to Build a Scalable Micro-Investing Platform in 2025 - A Founder’s Guide ...
Third Rock Techkno
 
PDF
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
PPTX
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
PDF
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
 
PDF
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 
PDF
Orbitly Pitch Deck|A Mission-Driven Platform for Side Project Collaboration (...
zz41354899
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
PPTX
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
PDF
CIFDAQ'S Market Insight: BTC to ETH money in motion
CIFDAQ
 
PDF
Best ERP System for Manufacturing in India | Elite Mindz
Elite Mindz
 
PPT
L2 Rules of Netiquette in Empowerment technology
Archibal2
 
PDF
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
PDF
Chapter 1 Introduction to CV and IP Lecture Note.pdf
Getnet Tigabie Askale -(GM)
 
PDF
This slide provides an overview Technology
mineshkharadi333
 
PDF
Software Development Company | KodekX
KodekX
 
PPTX
Smart Infrastructure and Automation through IoT Sensors
Rejig Digital
 
PDF
Doc9.....................................
SofiaCollazos
 
PDF
Cloud-Migration-Best-Practices-A-Practical-Guide-to-AWS-Azure-and-Google-Clou...
Artjoker Software Development Company
 
PPTX
Coupa-Overview _Assumptions presentation
annapureddyn
 
How to Build a Scalable Micro-Investing Platform in 2025 - A Founder’s Guide ...
Third Rock Techkno
 
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
 
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 
Orbitly Pitch Deck|A Mission-Driven Platform for Side Project Collaboration (...
zz41354899
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
CIFDAQ'S Market Insight: BTC to ETH money in motion
CIFDAQ
 
Best ERP System for Manufacturing in India | Elite Mindz
Elite Mindz
 
L2 Rules of Netiquette in Empowerment technology
Archibal2
 
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
Chapter 1 Introduction to CV and IP Lecture Note.pdf
Getnet Tigabie Askale -(GM)
 
This slide provides an overview Technology
mineshkharadi333
 
Software Development Company | KodekX
KodekX
 
Smart Infrastructure and Automation through IoT Sensors
Rejig Digital
 
Doc9.....................................
SofiaCollazos
 
Cloud-Migration-Best-Practices-A-Practical-Guide-to-AWS-Azure-and-Google-Clou...
Artjoker Software Development Company
 
Coupa-Overview _Assumptions presentation
annapureddyn
 

Cobol, lisp, and python

  • 1. COBOL Background  Released in 1959  Grace Hopper  Industry, universities, and government collaboration  Cold War pressures  80% of business transactions  65% of all code is in COBOL
  • 2. COBOL – Why?  Software Lifecycle  Cheaper to maintain  Y2K  Self-documenting code  Verbose  “IF a < b AND > c …”  Divisions
  • 3. COBOL – Why?  Divisions  Identification Division  Environment Division  Data Division  Procedure Division
  • 4. COBOL – Data Division  Data Division  Pictures  9 = digit  X = any character  A = alphabetic character  V = decimal point position  S = sign  Repeats  PIC 9 (4) = 9999
  • 6. COBOL – Groups and Elementary data
  • 8. COBOL  Reliability  Stood test of time  Has “ALTER X TO PROCEED TO Y” (a negative)  Uses GOTO statements (a negative)  Today  Cross platform: OpenCOBOL C translation  IDEs (Net Express)
  • 9. COBOL - Summary  Readability  Writability  Reliability  Portability
  • 10. LISP  LISt Processing  List-based language  2nd High-level language  1958 – John McCarthy for MIT
  • 12. LISP - Syntax  Function call: “(fun arg1 arg2)”  (+ 1 2 3)  Lists  (list ‘3 ‘7 ‘apples)  (3 7 apples)  (list ‘13 list(‘3 ‘5))  (13 (3 5))
  • 13. LISP – Innovations  Garbage Collection  If else statements  Recursion
  • 14. LISP – Linked Lists  Car (first)  Cdr (rest)
  • 16. LISP - Examples  If then else  (if nil (list ‘2 ‘3) (list ‘5 ‘6))  One line variant:  (if nil (list ‘2 ‘3) (list ‘5 ‘6))
  • 17. LISP - Examples  Factorial  (defun factorial (n) (if (<= n 1) 1 (* n (factorial (- n 1)))))  One line variant:  (defun factorial (n) (if (<= n 1) 1 (* n (factorial (- n 1)))))
  • 18. LISP - Examples  Recursive List Size  (defun recursiveSize (L) (if (null L) 0 (1+ (recursiveSize(rest L)))))
  • 19. LISP - Examples  Recursive List Sum with “LET”  (defun sum (L) (if (null L) 0 (let ((S1 (first L)) (S2 (sum (rest L)))) + S1 S2)))
  • 20. LISP- Summary and Comparison  Readability  Writability  Reliability
  • 21. Python  Developed early 1990’s  Guido van Rossum  ABC language  Python 2.0  2000  Community-supported -> reliability  Modular; community expandable  Python 3.0  2008
  • 22. Python – Readability is Key  Design goal  One way to do things  Clarity over clever code  Whitespace over braces  “pass” for No-Op
  • 23. Python  Writability  Similar to other OO languages  Verification support  Interpreted, assert, no statements in conditions  Clean style  Few keywords  Simple grammar -> few ways to do something
  • 24. Python  Comparisons  == tests values, not references  A < b <= C works properly  Ternary operator readable  “a if b else c”
  • 25. Python  System Requirements  Cross platform  Python Interpreter  Simplicity  Small core language  Large libaraies
  • 26. Python - Examples  a = 15 if(a < 10): print(“input less than 10”) elif(10 < a < 20): print(“input between 10 and 20”) else: print(“input greater than 20”)
  • 27. Python - Examples  Function definition def greatest(a, b, c): largest = a if a > b else b largest = largest if largest > c else c print(largest)  Function call greatest(7, 3, 14) 14
  • 28. Python - Examples  Determine if prime def isPrime(num): prime = True for i in range(2, (num / 2) + 1): if num % i == 0: prime = False return prime
  • 29. def tenPrimes(): list = [] count = 0 current = 2 #store the first 10 primes in a list while count < 10: if isPrime(current): count += 1 list.append(current) current = current + 1 #print the list for element in list: print(element)
  • 30. Python - Summary and Comparison  Readability  Writability  Reliability