Programming Languages Dan Grossman 2013

Slides:



Advertisements
Similar presentations
DRIVING IN RAINY WEATHER
Advertisements

BNF. What is BNF? BNF stands for “Backus-Naur Form,” after the people who invented it BNF is a metalanguage--a language used to describe another language.
The Universal Systems Model
Programming Languages Xiaojuan Cai
CSE341: Programming Languages Lecture 12 Equivalence Dan Grossman Spring 2013.
Car In Future Long Sun. Introduction & Background Information The first car is drive by steam engine and made in The first car accident is also.
CSE341: Programming Languages Lecture 7.5 Course Motivation Dan Grossman Fall 2011.
1 Lecture 4 Topics –Problem solving Subroutine Theme –REC language class The class of solvable problems Closure properties.
CS 310 – Fall 2006 Pacific University CS310 Turing Machines Section 3.1 November 6, 2006.
CS1001 Lecture 23. Overview Incompleteness and the Halting Problem Incompleteness and the Halting Problem Methods in Artificial Intelligence Methods in.
Combinational Logic Discussion D2.5. Combinational Logic Combinational Logic inputsoutputs Outputs depend only on the current inputs.
CSE341: Programming Languages Interlude: Course Motivation Dan Grossman Spring 2013.
Chapter 3 Driver Safety and the rules of the road! Driver Responsibility.
The Six Transportation Subsystems
LEVEL 1 Lesson 6 Topic: Toy Cars and Airplane Length:15 Minutes.
OCaml The PL for the discerning hacker.. Hello. I’m Zach, one of Sorin’s students.
Chapter 14: Recursion J ava P rogramming: From Problem Analysis to Program Design, From Problem Analysis to Program Design, Second Edition Second Edition.
Chapter 14 Recursion. Chapter Objectives Learn about recursive definitions Explore the base case and the general case of a recursive definition Learn.
Spring 2006ICOM 4036 Programming Laguages Lecture 2 1 The Nature of Computing Prof. Bienvenido Velez ICOM 4036 Lecture 2.
Movement-Machines-Cars Question: How do cars work?
Java Programming: From Problem Analysis to Program Design, 4e Chapter 13 Recursion.
The Nature of Computing INEL 4206 – Microprocessors Lecture 3 Bienvenido Vélez Ph. D. School of Engineering University of Puerto Rico - Mayagüez.
The Nature of Computing INEL 4206 – Microprocessors Lecture 2 Bienvenido Vélez Ph. D. School of Engineering University of Puerto Rico - Mayagüez.
Data Structures and Algorithms Dr. Tehseen Zia Assistant Professor Dept. Computer Science and IT University of Sargodha Lecture 1.
Recursion A recursive definition is one which uses the word or concept being defined in the definition itself Example: “A computer is a machine.
Interpreters and Higher-Order Functions CSE 413 Autumn 2008 Credit: CSE341 notes by Dan Grossman.
MARC ProgramEssential Computing for Bioinformatics 1 The Nature of Computing Prof. Bienvenido Velez ICOM 4995 Lecture 3.
Programming Languages Dan Grossman 2013 Optional: Course-Motivation Introduction.
Maitrayee Mukerji. INPUT MEMORY PROCESS OUTPUT DATA INFO.
Programming Languages Dan Grossman 2013
Functional Programming
CSE341: Programming Languages Interlude: Course Motivation
CSE341: Programming Languages Lecture 21 Dynamic Dispatch Precisely, and Manually in Racket Dan Grossman Spring 2016.
Programming Languages Dan Grossman 2013
Programming Languages Dan Grossman 2013
Programming Languages Dan Grossman 2013
Programming Languages Dan Grossman 2013
Programming Languages Dan Grossman 2013
CSE341: Programming Languages Lecture 21 Dynamic Dispatch Precisely, and Manually in Racket Dan Grossman Winter 2013.
Programming Languages Dan Grossman 2013
CSE341: Programming Languages Lecture 21 Dynamic Dispatch Precisely, and Manually in Racket Dan Grossman Spring 2017.
Programming Languages Dan Grossman 2013
Programming Languages Dan Grossman 2013
Programming Languages Dan Grossman 2013
Programming Languages Dan Grossman 2013
Programming Languages Dan Grossman 2013
Pumping Lemma Revisited
CSE341: Programming Languages Lecture 21 Dynamic Dispatch Precisely, and Manually in Racket Dan Grossman Autumn 2017.
CSE341: Programming Languages Interlude: Course Motivation
PRINCIPALES OF OBJECT ORIENTED PROGRAMMING
Turing Machines 2nd 2017 Lecture 9.
Chapter 9 TURING MACHINES.
CSE341: Programming Languages Interlude: Course Motivation
CSE341: Programming Languages Lecture 21 Dynamic Dispatch Precisely, and Manually in Racket Dan Grossman Autumn 2018.
CSE341: Programming Languages Lecture 12 Equivalence
Computing Functions with Turing Machines
CSE341: Programming Languages Interlude: Course Motivation
CSE341: Programming Languages Lecture 12 Equivalence
CSE341: Programming Languages Lecture 12 Equivalence
(Assignment due: Wed. Feb. 04, 2004)
Object-Oriented Programming Concepts
The Nature of Computing
Formal Definitions for Turing Machines
CSE341: Programming Languages Lecture 12 Equivalence
Programming Languages Dan Grossman 2013
CSE341: Programming Languages Interlude: Course Motivation
CSE341: Programming Languages Lecture 12 Equivalence
Driver initiated transition demand and system reaction
CSE341: Programming Languages Lecture 21 Dynamic Dispatch Precisely, and Manually in Racket Dan Grossman Spring 2019.
CSE341: Programming Languages Lecture 26 Course Victory Lap
Presentation transcript:

Programming Languages Dan Grossman 2013 Optional: Are All PLs the Same?

Dan Grossman, Programming Languages All cars are the same To make it easier to rent cars, it is great that they all have steering wheels, brakes, windows, headlights, etc. Yet it is still uncomfortable to learn a new one Can you be a great driver if you only ever drive one car? And maybe PLs are more like cars, trucks, boats, and bikes So are all PLs really the same… Jan-Mar 2013 Dan Grossman, Programming Languages

Are all languages the same? Yes: Any input-output behavior implementable in language X is implementable in language Y [Church-Turing thesis] Java, ML, and a language with one loop and three infinitely-large integers are “the same” Same fundamentals reappear: variables, abstraction, one-of types, recursive definitions, … No: The human condition vs. different cultures (travel to learn more about home) The primitive/default in one language is awkward in another Beware “the Turing tarpit” Jan-Mar 2013 Dan Grossman, Programming Languages