2! Multimedia Programming with! Python and SDL
|
|
|
- Junior Stanley
- 10 years ago
- Views:
Transcription
1 2 Multimedia Programming with Python and SDL 2.1 Introduction to Python 2.2 SDL/Pygame: Multimedia/Game Frameworks for Python Literature: G. van Rossum and F. L. Drake, Jr., An Introduction to Python - The Python Tutorial (version 2.5), Network Theory LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 1
2 Guido van Rossum, 1991, CWI Amsterdam Now open source, current main versions: (used here) and Targeted at programming novices Characteristics: Interpreted scripting language Compiled to intermediate byte code (similar to Java) Multi-paradigm language: imperative/structured, object-oriented, functional, aspect-oriented Dynamic typing Automatic garbage collection Do you really understand all these terms? QUIZ: How is the foot related to Python? Images: Wikipedia LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 2
3 Java to Python: Imperative Example (Java) public class Main { public static int sequentialsearch(int q, int[] a) { for(int i = 0; i < a.length; i++) { if(a[i]==q) { return i; } } return -1; } public static void main(string[] args) { int[] a = {11, 22, 33, 44, 55, 66}; System.out.println("Array a: "+a); System.out.println("Search for 55: "+sequentialsearch(55,a)); System.out.println("Search for 23: "+sequentialsearch(23,a)); } } LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 3
4 Java to Python: Imperative Example def sequentialsearch (q, a): for i in range(0,len(a)): if a[i]==q: return i return -1 a = [11, 22, 33, 44, 55, 66] print "Array a: ", a print "Search for 55: ",sequentialsearch(55,a) print "Search for 23: ",sequentialsearch(23,a) QUIZ: What are the differences to Java? LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 4
5 First Observations on Python Very compact code Data types are not specified Powerful but simple built-in list datatype Indentation (white space) is important for program semantics Block levels given by indentation What is done in Java with {} brackets, is done here with indentation Example: A different (wrong) algorithm: def sequentialsearch (q, a): for i in range(0,len(a)): if a[i]==q: return i return -1 LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 5
6 Scripting Language Traditionally: A scripting language is a programming language that is used to control some application software Command languages for operating systems Task automatization in user interfaces Scripts for Web browsers, word processors, spreadsheet software, Historically, considered slow in execution and limited in program size Modern general-purpose scripting languages Have inherited many features from traditional scripting languages Are considered as full application programming languages: Examples: Rexx, Perl, Python, Ruby LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 6
7 Compilation, Interpretation and Others Program Compiler Machine code Compilation (Example: C) Input Machine code Output Input Interpreter Output Interpretation (Example: Python) Variations: Program Compilation to intermediate code (Java) Just-in-time compilation Internal compilation to intermediate code in interpreter (Python/ CPython) LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 7
8 Interactive Interpreter Interpreted languages can easily be executed line-by-line Interactive execution is helpful for understanding See BASIC, Logo etc. LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 8
9 Static and Dynamic Typing Type checking: Simple, automatically executable form of proof for program correctness (in certain limited respects) Avoids operations to be applied to unsuitable arguments Static typing: Type information is checked before execution of program (at compile time) Program code has to specify (explicitly or implicitly) types for all variables Examples: Java, Pascal, C, Standard ML Dynamic typing: Type information is checked during execution of program (at run time) Type information for variables only exists after value assignment Examples: Smalltalk, Python, JavaScript In practice, static and dynamic tying are sometimes mixed: See the dynamic type check for downcast operations in Java LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 9
10 Strong and Weak Typing Surprisingly ill-defined terms Do not take this classification too serious Strong typing: Basic idea: Strong typing provides no (or only very limited) possibility to evade the restrictions of the type system Examples of strongly typed languages: Java, Pascal, Standard ML, Python Weak typing: Implicit type conversions Type conversions with undefined result Examples of weakly typed languages: Visual Basic, C, JavaScript LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 10
11 Duck When I see a bird that walks like a duck and swims like a duck and quacks like a duck, I call that bird a duck. James Whitcomb Riley The type of an object is determined only by the fact whether it has the features required from it. Appropriate for object-oriented programming languages with dynamic types - like Python. LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 11
12 String Operations in Python Operations valid for all sequence types: Indexing: str[5] (str is the string object) Negative indexing: str[-5] (counting from the end) Slicing: str[2:5], str[:5], str[2:6:2], str[::-1] Omitted index is begin or end, third value is step size (covers reversion) Operations: len(str), min(str), max(str), x in str Numerous methods specific for strings like: capitalize() count(substr) find(substr) isalpha() partition(sep) replace split(sep) upper() title() LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 12
13 Lists in Python List: Sequential collection of objects (of arbitrary, also varying type) Can be easily used as stack or queue data structures Flexible creation of lists e.g. by list comprehension: l = [3*x for x in range(1,4)] Lists are mutable (can be even changed through slices) List methods: append count extend index insert pop remove reverse sort LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 13
14 Sets in Python Set: Unordered collection without duplicates Constructor set builds a set from a list Basic mathematical operations for sets: Union ( ) Intersection (&) Difference (-) Symmetric difference (^) Example: set('multimedia') & set('programming') LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 14
15 Java to Python: Imperative Example def sequentialsearch (q, a): return q in a a = [11, 22, 33, 44, 55, 66] print a print "Array a: ", a print "Search for 55: ",sequentialsearch(55,a) print "Search for 23: ",sequentialsearch(23,a) LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 15
16 Tuples and Dictionaries in Python Tuple: immutable collection of objects (of arbitrary type) N = ('max','muster') N = 'max','muster' Strange: One-element tuple written as 'max', Easy unpacking of tuples: vorname, nachname = ('max','muster') Dictionary: Mutable collection of object maps (of arbitrary type) age = {'anna':23, 'max':22} Key entries can only be of immutable type (strings, numbers, tuples) Key entries must be hashable Main purpose: indexed access age['anna'] Constructor accepts lists or generator expressions: dict((x, x*x) for x in range(0,5)) LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 16
17 Java to Python: Object-Oriented Example public class Counter { private int k = 0; public void count () { k++; } public void reset () { k = 0; } public int getvalue () { return k; } } LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 17
18 Java to Python: Object-Oriented Example (Python) class Counter: def init (self): self.k = 0 def count(self): self.k += 1 def reset(self): self.k = 0 def getvalue(self): return self.k Initialization (constructor) Instance variable k Self parameter is implicit in method calls but explicitly mentioned in declaration LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 18
19 Constructing Objects, Invoking Methods Example: c = Counter() print c.getvalue() c.count() c.count() c.count() print c.getvalue() LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 19
20 Inheritance in Python class LimitCounter(Counter): def init (self, limit): self.k = 0 self.limit = limit def count(self): if self.k = self.limit: self.k += 1 In contrast to Java, Python allows multiple inheritance LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 20
21 Python Modules Module: A file containing Python definitions and statements File name is module name with suffix.py Module name is available as global variable name Statements in a module are executed when the module is imported (initialization) Importing a module m: import m Accessing a definition f() in m: m.f() from m import * Accessing a definition f() in m: f() LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 21
22 Why Python in This Lecture? Python is not a specific multimedia language We will use a simple Python-binding for a multimedia/gaming framework Generally, knowing Python is a good thing to get programming tasks done easily. LMU München, Sommer 2014 Prof. Hußmann: Multimedia-Programmierung Kapitel 2 Teil a, Folie 22
Programming in Python. Basic information. Teaching. Administration Organisation Contents of the Course. Jarkko Toivonen. Overview of Python
Programming in Python Jarkko Toivonen Department of Computer Science University of Helsinki September 18, 2009 Administration Organisation Contents of the Course Overview of Python Jarkko Toivonen (CS
Getting Started with the Internet Communications Engine
Getting Started with the Internet Communications Engine David Vriezen April 7, 2014 Contents 1 Introduction 2 2 About Ice 2 2.1 Proxies................................. 2 3 Setting Up ICE 2 4 Slices 2
CSE 373: Data Structure & Algorithms Lecture 25: Programming Languages. Nicki Dell Spring 2014
CSE 373: Data Structure & Algorithms Lecture 25: Programming Languages Nicki Dell Spring 2014 What is a Programming Language? A set of symbols and associated tools that translate (if necessary) collections
Crash Dive into Python
ECPE 170 University of the Pacific Crash Dive into Python 2 Lab Schedule Ac:vi:es Assignments Due Today Lab 8 Python Due by Oct 26 th 5:00am Endianness Lab 9 Tuesday Due by Nov 2 nd 5:00am Network programming
Announcements FORTRAN ALGOL COBOL. Simula & Smalltalk. Programming Languages
Announcements Programming Languages! Monday evening GBA section has been shut down " If you were assigned to this section, please find a different section " If you cannot attend a different section, please
CompuScholar, Inc. Alignment to Utah's Computer Programming II Standards
CompuScholar, Inc. Alignment to Utah's Computer Programming II Standards Course Title: TeenCoder: Java Programming Course ISBN: 978 0 9887070 2 3 Course Year: 2015 Note: Citation(s) listed may represent
Moving from CS 61A Scheme to CS 61B Java
Moving from CS 61A Scheme to CS 61B Java Introduction Java is an object-oriented language. This document describes some of the differences between object-oriented programming in Scheme (which we hope you
3 Multimedia Programming with C++ and Multimedia Frameworks
3 Multimedia Programming with C++ and Multimedia Frameworks 3.1 Multimedia Support by Languages and Frameworks 3.2 Introduction to C++ 3.3 SFML: Low-Level Multimedia/Game Framework for C++ 3.4 Cocos2d-x:
Evolution of the Major Programming Languages
142 Evolution of the Major Programming Languages Object Oriented Programming: Smalltalk Object-Oriented: It s fundamental characteristics are: Data abstraction, Inheritance and Dynamic Binding. The essence
CSCI 3136 Principles of Programming Languages
CSCI 3136 Principles of Programming Languages Faculty of Computer Science Dalhousie University Winter 2013 CSCI 3136 Principles of Programming Languages Faculty of Computer Science Dalhousie University
Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives
Introduction to Programming and Algorithms Module 1 CS 146 Sam Houston State University Dr. Tim McGuire Module Objectives To understand: the necessity of programming, differences between hardware and software,
Objects and classes. Objects and classes. Jarkko Toivonen (CS Department) Programming in Python 1
Objects and classes Jarkko Toivonen (CS Department) Programming in Python 1 Programming paradigms of Python Python is an object-oriented programming language like Java and C++ But unlike Java, Python doesn
http://algs4.cs.princeton.edu dictionary find definition word definition book index find relevant pages term list of page numbers
ROBERT SEDGEWICK KEVI WAYE F O U R T H E D I T I O ROBERT SEDGEWICK KEVI WAYE ROBERT SEDGEWICK KEVI WAYE Symbol tables Symbol table applications Key-value pair abstraction. Insert a value with specified.
What is a programming language?
Overview Introduction Motivation Why study programming languages? Some key concepts What is a programming language? Artificial language" Computers" Programs" Syntax" Semantics" What is a programming language?...there
C# and Other Languages
C# and Other Languages Rob Miles Department of Computer Science Why do we have lots of Programming Languages? Different developer audiences Different application areas/target platforms Graphics, AI, List
Introduction to Object-Oriented Programming
Introduction to Object-Oriented Programming Programs and Methods Christopher Simpkins [email protected] CS 1331 (Georgia Tech) Programs and Methods 1 / 8 The Anatomy of a Java Program It is customary
Programming Languages
Programming Languages Qing Yi Course web site: www.cs.utsa.edu/~qingyi/cs3723 cs3723 1 A little about myself Qing Yi Ph.D. Rice University, USA. Assistant Professor, Department of Computer Science Office:
Thomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science. Unit of Study / Textbook Correlation
Thomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science updated 03/08/2012 Unit 1: JKarel 8 weeks http://www.fcps.edu/is/pos/documents/hs/compsci.htm
Crash Dive into Python
ECPE 170 University of the Pacific Crash Dive into Python 2 Lab Schedule Ac:vi:es Assignments Due Today Lab 11 Network Programming Due by Dec 1 st 5:00am Python Lab 12 Next Week Due by Dec 8 th 5:00am
Chapter 1. Dr. Chris Irwin Davis Email: [email protected] Phone: (972) 883-3574 Office: ECSS 4.705. CS-4337 Organization of Programming Languages
Chapter 1 CS-4337 Organization of Programming Languages Dr. Chris Irwin Davis Email: [email protected] Phone: (972) 883-3574 Office: ECSS 4.705 Chapter 1 Topics Reasons for Studying Concepts of Programming
cs2010: algorithms and data structures
cs2010: algorithms and data structures Lecture 11: Symbol Table ADT. Vasileios Koutavas 28 Oct 2015 School of Computer Science and Statistics Trinity College Dublin Algorithms ROBERT SEDGEWICK KEVIN WAYNE
Welcome to Introduction to programming in Python
Welcome to Introduction to programming in Python Suffolk One, Ipswich, 4:30 to 6:00 Tuesday Jan 14, Jan 21, Jan 28, Feb 11 Welcome Fire exits Toilets Refreshments 1 Learning objectives of the course An
Introduction to Python
Caltech/LEAD Summer 2012 Computer Science Lecture 2: July 10, 2012 Introduction to Python The Python shell Outline Python as a calculator Arithmetic expressions Operator precedence Variables and assignment
1/20/2016 INTRODUCTION
INTRODUCTION 1 Programming languages have common concepts that are seen in all languages This course will discuss and illustrate these common concepts: Syntax Names Types Semantics Memory Management We
3 Multimedia Programming with C++ and Multimedia Frameworks
3 Multimedia Programming with C++ and Multimedia Frameworks 3.1 Multimedia Support by Languages and Frameworks 3.2 Introduction to C++ 3.3 SFML: Low-Level Multimedia/Game Framework for C++ 3.4 Cocos2d-x:
Lecture 9. Semantic Analysis Scoping and Symbol Table
Lecture 9. Semantic Analysis Scoping and Symbol Table Wei Le 2015.10 Outline Semantic analysis Scoping The Role of Symbol Table Implementing a Symbol Table Semantic Analysis Parser builds abstract syntax
Fundamentals of Java Programming
Fundamentals of Java Programming This document is exclusive property of Cisco Systems, Inc. Permission is granted to print and copy this document for non-commercial distribution and exclusive use by instructors
Intro to scientific programming (with Python) Pietro Berkes, Brandeis University
Intro to scientific programming (with Python) Pietro Berkes, Brandeis University Next 4 lessons: Outline Scientific programming: best practices Classical learning (Hoepfield network) Probabilistic learning
Outline. multiple choice quiz bottom-up design. the modules main program: quiz.py namespaces in Python
Outline 1 Modular Design multiple choice quiz bottom-up design 2 Python Implementation the modules main program: quiz.py namespaces in Python 3 The Software Cycle quality of product and process waterfall
Java CPD (I) Frans Coenen Department of Computer Science
Java CPD (I) Frans Coenen Department of Computer Science Content Session 1, 12:45-14:30 (First Java Programme, Inheritance, Arithmetic) Session 2, 14:45-16:45 (Input and Programme Constructs) Materials
Image credits: http://xkcd.com/353/
Image credits: http://xkcd.com/353/ CS 354: Programming Languages Alark Joshi Copyright 2009 Addison-Wesley. All rights reserved. Contact Information Email: [email protected] Course Website: o
Free Java textbook available online. Introduction to the Java programming language. Compilation. A simple java program
Free Java textbook available online "Thinking in Java" by Bruce Eckel, 4th edition, 2006, ISBN 0131872486, Pearson Education Introduction to the Java programming language CS 4354 Summer II 2015 The third
Programming Languages CIS 443
Course Objectives Programming Languages CIS 443 0.1 Lexical analysis Syntax Semantics Functional programming Variable lifetime and scoping Parameter passing Object-oriented programming Continuations Exception
Computing Concepts with Java Essentials
2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Computing Concepts with Java Essentials 3rd Edition Cay Horstmann
Programming Language Pragmatics
Programming Language Pragmatics THIRD EDITION Michael L. Scott Department of Computer Science University of Rochester ^ШШШШШ AMSTERDAM BOSTON HEIDELBERG LONDON, '-*i» ЩЛ< ^ ' m H NEW YORK «OXFORD «PARIS»SAN
Programming Languages
Programming Languages Programming languages bridge the gap between people and machines; for that matter, they also bridge the gap among people who would like to share algorithms in a way that immediately
The C Programming Language course syllabus associate level
TECHNOLOGIES The C Programming Language course syllabus associate level Course description The course fully covers the basics of programming in the C programming language and demonstrates fundamental programming
6.1. Example: A Tip Calculator 6-1
Chapter 6. Transition to Java Not all programming languages are created equal. Each is designed by its creator to achieve a particular purpose, which can range from highly focused languages designed for
SE 360 Advances in Software Development Object Oriented Development in Java. Polymorphism. Dr. Senem Kumova Metin
SE 360 Advances in Software Development Object Oriented Development in Java Polymorphism Dr. Senem Kumova Metin Modified lecture notes of Dr. Hüseyin Akcan Inheritance Object oriented programming languages
Overview. Elements of Programming Languages. Advanced constructs. Motivating inner class example
Overview Elements of Programming Languages Lecture 12: Object-oriented functional programming James Cheney University of Edinburgh November 6, 2015 We ve now covered: basics of functional and imperative
CRASH COURSE PYTHON. Het begint met een idee
CRASH COURSE PYTHON nr. Het begint met een idee This talk Not a programming course For data analysts, who want to learn Python For optimizers, who are fed up with Matlab 2 Python Scripting language expensive
Advanced Computer Architecture-CS501. Computer Systems Design and Architecture 2.1, 2.2, 3.2
Lecture Handout Computer Architecture Lecture No. 2 Reading Material Vincent P. Heuring&Harry F. Jordan Chapter 2,Chapter3 Computer Systems Design and Architecture 2.1, 2.2, 3.2 Summary 1) A taxonomy of
n Introduction n Art of programming language design n Programming language spectrum n Why study programming languages? n Overview of compilation
Lecture Outline Programming Languages CSCI-4430 & CSCI-6430, Spring 2016 www.cs.rpi.edu/~milanova/csci4430/ Ana Milanova Lally Hall 314, 518 276-6887 [email protected] Office hours: Wednesdays Noon-2pm
The Java Series. Java Essentials I What is Java? Basic Language Constructs. Java Essentials I. What is Java?. Basic Language Constructs Slide 1
The Java Series Java Essentials I What is Java? Basic Language Constructs Slide 1 What is Java? A general purpose Object Oriented programming language. Created by Sun Microsystems. It s a general purpose
ML for the Working Programmer
ML for the Working Programmer 2nd edition Lawrence C. Paulson University of Cambridge CAMBRIDGE UNIVERSITY PRESS CONTENTS Preface to the Second Edition Preface xiii xv 1 Standard ML 1 Functional Programming
MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question.
Exam Name MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question. 1) The JDK command to compile a class in the file Test.java is A) java Test.java B) java
Free Java textbook available online. Introduction to the Java programming language. Compilation. A simple java program
Free Java textbook available online "Thinking in Java" by Bruce Eckel, 4th edition, 2006, ISBN 0131872486, Pearson Education Introduction to the Java programming language CS 4354 Summer II 2014 Jill Seaman
A Python Tour: Just a Brief Introduction CS 303e: Elements of Computers and Programming
A Python Tour: Just a Brief Introduction CS 303e: Elements of Computers and Programming "The only way to learn a new programming language is by writing programs in it." -- B. Kernighan and D. Ritchie "Computers
Invitation to Ezhil : A Tamil Programming Language for Early Computer-Science Education 07/10/13
Invitation to Ezhil: A Tamil Programming Language for Early Computer-Science Education Abstract: Muthiah Annamalai, Ph.D. Boston, USA. Ezhil is a Tamil programming language with support for imperative
Stacks. Stacks (and Queues) Stacks. q Stack: what is it? q ADT. q Applications. q Implementation(s) CSCU9A3 1
Stacks (and Queues) 1 Stacks Stack: what is it? ADT Applications Implementation(s) 2 CSCU9A3 1 Stacks and ueues A stack is a very important data structure in computing science. A stack is a seuence of
McGraw-Hill The McGraw-Hill Companies, Inc., 20 1. 01 0
1.1 McGraw-Hill The McGraw-Hill Companies, Inc., 2000 Objectives: To describe the evolution of programming languages from machine language to high-level languages. To understand how a program in a high-level
Python for Scientific Computing. http://bender.astro.sunysb.edu/classes/python-science
http://bender.astro.sunysb.edu/classes/python-science Course Goals Simply: to learn how to use python to do Numerical analysis Data analysis Plotting and visualizations Symbol mathematics Write applications...
Pseudo code Tutorial and Exercises Teacher s Version
Pseudo code Tutorial and Exercises Teacher s Version Pseudo-code is an informal way to express the design of a computer program or an algorithm in 1.45. The aim is to get the idea quickly and also easy
Objectif. Participant. Prérequis. Remarque. Programme. C# 3.0 Programming in the.net Framework. 1. Introduction to the.
Objectif This six-day instructor-led course provides students with the knowledge and skills to develop applications in the.net 3.5 using the C# 3.0 programming language. C# is one of the most popular programming
CS 106 Introduction to Computer Science I
CS 106 Introduction to Computer Science I 01 / 21 / 2014 Instructor: Michael Eckmann Today s Topics Introduction Homework assignment Review the syllabus Review the policies on academic dishonesty and improper
02 B The Java Virtual Machine
02 B The Java Virtual Machine CS1102S: Data Structures and Algorithms Martin Henz January 22, 2010 Generated on Friday 22 nd January, 2010, 09:46 CS1102S: Data Structures and Algorithms 02 B The Java Virtual
Master of Sciences in Informatics Engineering Programming Paradigms 2005/2006. Final Examination. January 24 th, 2006
Master of Sciences in Informatics Engineering Programming Paradigms 2005/2006 Final Examination January 24 th, 2006 NAME: Please read all instructions carefully before start answering. The exam will be
Concepts and terminology in the Simula Programming Language
Concepts and terminology in the Simula Programming Language An introduction for new readers of Simula literature Stein Krogdahl Department of Informatics University of Oslo, Norway April 2010 Introduction
Computers. An Introduction to Programming with Python. Programming Languages. Programs and Programming. CCHSG Visit June 2014. Dr.-Ing.
Computers An Introduction to Programming with Python CCHSG Visit June 2014 Dr.-Ing. Norbert Völker Many computing devices are embedded Can you think of computers/ computing devices you may have in your
Introduction to Java
Introduction to Java The HelloWorld program Primitive data types Assignment and arithmetic operations User input Conditional statements Looping Arrays CSA0011 Matthew Xuereb 2008 1 Java Overview A high
PROBLEM SOLVING SEVENTH EDITION WALTER SAVITCH UNIVERSITY OF CALIFORNIA, SAN DIEGO CONTRIBUTOR KENRICK MOCK UNIVERSITY OF ALASKA, ANCHORAGE PEARSON
PROBLEM SOLVING WITH SEVENTH EDITION WALTER SAVITCH UNIVERSITY OF CALIFORNIA, SAN DIEGO CONTRIBUTOR KENRICK MOCK UNIVERSITY OF ALASKA, ANCHORAGE PEARSON Addison Wesley Boston San Francisco New York London
KITES TECHNOLOGY COURSE MODULE (C, C++, DS)
KITES TECHNOLOGY 360 Degree Solution www.kitestechnology.com/academy.php [email protected] [email protected] Contact: - 8961334776 9433759247 9830639522.NET JAVA WEB DESIGN PHP SQL, PL/SQL
Debugging. Common Semantic Errors ESE112. Java Library. It is highly unlikely that you will write code that will work on the first go
Debugging ESE112 Java Programming: API, Psuedo-Code, Scope It is highly unlikely that you will write code that will work on the first go Bugs or errors Syntax Fixable if you learn to read compiler error
Language Evaluation Criteria. Evaluation Criteria: Readability. Evaluation Criteria: Writability. ICOM 4036 Programming Languages
ICOM 4036 Programming Languages Preliminaries Dr. Amirhossein Chinaei Dept. of Electrical & Computer Engineering UPRM Spring 2010 Language Evaluation Criteria Readability: the ease with which programs
A TOOL FOR DATA STRUCTURE VISUALIZATION AND USER-DEFINED ALGORITHM ANIMATION
A TOOL FOR DATA STRUCTURE VISUALIZATION AND USER-DEFINED ALGORITHM ANIMATION Tao Chen 1, Tarek Sobh 2 Abstract -- In this paper, a software application that features the visualization of commonly used
Python CS1 as Preparation for C++ CS2
Python CS1 as Preparation for C++ CS2 Richard Enbody, William Punch, Mark McCullen Department of Computer Science and Engineering Mighigan State University East Lansing, Michigan [enbody,punch,mccullen]@cse.msu.edu
Chapter 13 Computer Programs and Programming Languages. Discovering Computers 2012. Your Interactive Guide to the Digital World
Chapter 13 Computer Programs and Programming Languages Discovering Computers 2012 Your Interactive Guide to the Digital World Objectives Overview Differentiate between machine and assembly languages Identify
Glossary of Object Oriented Terms
Appendix E Glossary of Object Oriented Terms abstract class: A class primarily intended to define an instance, but can not be instantiated without additional methods. abstract data type: An abstraction
CSCE 110 Programming I Basics of Python: Variables, Expressions, and Input/Output
CSCE 110 Programming Basics of Python: Variables, Expressions, and nput/output Dr. Tiffani L. Williams Department of Computer Science and Engineering Texas A&M University Fall 2011 Python Python was developed
Semester Review. CSC 301, Fall 2015
Semester Review CSC 301, Fall 2015 Programming Language Classes There are many different programming language classes, but four classes or paradigms stand out:! Imperative Languages! assignment and iteration!
Exercise 0. Although Python(x,y) comes already with a great variety of scientic Python packages, we might have to install additional dependencies:
Exercise 0 Deadline: None Computer Setup Windows Download Python(x,y) via http://code.google.com/p/pythonxy/wiki/downloads and install it. Make sure that before installation the installer does not complain
Ruby in the context of scientific computing
Ruby in the context of scientific computing 16 January 2014 1/24 Overview Introduction Characteristics and Features Closures Ruby and Scientific Computing SciRuby Bioruby Conclusion References 2/24 Introduction
The Java Virtual Machine and Mobile Devices. John Buford, Ph.D. [email protected] Oct 2003 Presented to Gordon College CS 311
The Java Virtual Machine and Mobile Devices John Buford, Ph.D. [email protected] Oct 2003 Presented to Gordon College CS 311 Objectives Review virtual machine concept Introduce stack machine architecture
Lecture 18-19 Data Types and Types of a Language
Lecture 18-19 Data Types and Types of a Language April 29, 2014 Data Types and Types of a Language Data, Data Types and Types Type: Generalities Type Systems and Type Safety Type Equivalence, Coercion
Interpreters and virtual machines. Interpreters. Interpreters. Why interpreters? Tree-based interpreters. Text-based interpreters
Interpreters and virtual machines Michel Schinz 2007 03 23 Interpreters Interpreters Why interpreters? An interpreter is a program that executes another program, represented as some kind of data-structure.
The Smalltalk Programming Language. Beatrice Åkerblom [email protected]
The Smalltalk Programming Language Beatrice Åkerblom [email protected] 'The best way to predict the future is to invent it' - Alan Kay. History of Smalltalk Influenced by Lisp and Simula Object-oriented
Computer Science. 232 Computer Science. Degrees and Certificates Awarded. A.S. Degree Requirements. Program Student Outcomes. Department Offices
232 Computer Science Computer Science (See Computer Information Systems section for additional computer courses.) We are in the Computer Age. Virtually every occupation in the world today has an interface
Static vs. Dynamic. Lecture 10: Static Semantics Overview 1. Typical Semantic Errors: Java, C++ Typical Tasks of the Semantic Analyzer
Lecture 10: Static Semantics Overview 1 Lexical analysis Produces tokens Detects & eliminates illegal tokens Parsing Produces trees Detects & eliminates ill-formed parse trees Static semantic analysis
MICHIGAN TEST FOR TEACHER CERTIFICATION (MTTC) TEST OBJECTIVES FIELD 050: COMPUTER SCIENCE
MICHIGAN TEST FOR TEACHER CERTIFICATION (MTTC) TEST OBJECTIVES Subarea Educational Computing and Technology Literacy Computer Systems, Data, and Algorithms Program Design and Verification Programming Language
C++ Programming Language
C++ Programming Language Lecturer: Yuri Nefedov 7th and 8th semesters Lectures: 34 hours (7th semester); 32 hours (8th semester). Seminars: 34 hours (7th semester); 32 hours (8th semester). Course abstract
[1] Learned how to set up our computer for scripting with python et al. [3] Solved a simple data logistics problem using natural language/pseudocode.
Last time we... [1] Learned how to set up our computer for scripting with python et al. [2] Thought about breaking down a scripting problem into its constituent steps. [3] Solved a simple data logistics
Java 6 'th. Concepts INTERNATIONAL STUDENT VERSION. edition
Java 6 'th edition Concepts INTERNATIONAL STUDENT VERSION CONTENTS PREFACE vii SPECIAL FEATURES xxviii chapter i INTRODUCTION 1 1.1 What Is Programming? 2 J.2 The Anatomy of a Computer 3 1.3 Translating
Computer Science. Computer Science 207. Degrees and Certificates Awarded. A.S. Computer Science Degree Requirements. Program Student Outcomes
Computer Science 207 Computer Science (See Computer Information Systems section for additional computer courses.) We are in the Computer Age. Virtually every occupation in the world today has an interface
Name Spaces. Introduction into Python Python 5: Classes, Exceptions, Generators and more. Classes: Example. Classes: Briefest Introduction
Name Spaces Introduction into Python Python 5: Classes, Exceptions, Generators and more Daniel Polani Concept: There are three different types of name spaces: 1. built-in names (such as abs()) 2. global
AP Computer Science Java Subset
APPENDIX A AP Computer Science Java Subset The AP Java subset is intended to outline the features of Java that may appear on the AP Computer Science A Exam. The AP Java subset is NOT intended as an overall
Introduction to Programming
Introduction to Programming Lecturer: Steve Maybank Department of Computer Science and Information Systems [email protected] Spring 2015 Week 2b: Review of Week 1, Variables 16 January 2015 Birkbeck
Computer Science. Computer Science 213. Faculty and Offices. Degrees and Certificates Awarded. AS Computer Science Degree Requirements
Computer Science 213 Computer Science (See Computer Information Systems section for additional computer courses.) Degrees and Certificates Awarded Associate in Science Degree, Computer Science Certificate
Implementing Rexx Handlers in NetRexx/Java/Rexx
Institut für Betriebswirtschaftslehre und Wirtschaftsinformatik Implementing Rexx Handlers in NetRexx/Java/Rexx The 2012 International Rexx Symposium Rony G. Flatscher Wirtschaftsuniversität Wien Augasse
MEAP Edition Manning Early Access Program Nim in Action Version 1
MEAP Edition Manning Early Access Program Nim in Action Version 1 Copyright 2016 Manning Publications For more information on this and other Manning titles go to www.manning.com Welcome Thank you for purchasing
High-Level Language. Building a Modern Computer From First Principles. www.nand2tetris.org
High-Level Language Building a Modern Computer From First Principles www.nand2tetris.org Elements of Computing Systems, Nisan & Schocken, MIT Press, www.nand2tetris.org, Chapter 9: High-Level Language
How to start with 3DHOP
How to start with 3DHOP Package content, local setup, online deployment http://3dhop.net 30/6/2015 The 3DHOP distribution Where to find it, what s inside The 3DHOP distribution package From the page http://3dhop.net/download.php
Organization of Programming Languages CS320/520N. Lecture 05. Razvan C. Bunescu School of Electrical Engineering and Computer Science bunescu@ohio.
Organization of Programming Languages CS320/520N Razvan C. Bunescu School of Electrical Engineering and Computer Science [email protected] Names, Bindings, and Scopes A name is a symbolic identifier used
