iwiki Documentation Release 1.0 jch

Size: px
Start display at page:

Download "iwiki Documentation Release 1.0 jch"

Transcription

1 iwiki Documentation Release 1.0 jch January 31, 2014

2

3 Contents i

4 ii

5 Contents: Contents 1

6 2 Contents

7 CHAPTER 1 Python 1.1 Python Core Strings Functions Argument Lists *args tuple/list **kwargs dictionary def foo(*args): print args Unpacking Tuples Tuple assignment a, b = b, a Tuple comparison Lists Dictionaries Sorting from operator import itemgetter d = { spam :7, eggs : 14, ham :6} #sort by key print sorted(d.iteritems(), reverse=true) # return a list of tuples print sorted(d.keys(), reverse=true) # return just a list of keys 3

8 # sort by value print sorted(d.iteritems(), key=itemgetter(1), reverse=true) #return a list of tuples print sorted(d.iteritems(), key=lambda x: x[1], reverse=true) print sorted(d, key=d. getitem, reverse=true) #return just a list of values Files Regular Expressions re.search(pat, str, flags=0) returns a match object or None otherwise. re.findall(pat, str, flags=0) returns a list of all matches. re.sub(pat, repl, str, count=0, flags=0) the replacement string can include \1, \2 which refer to the text from group(1), group(2) and so on from the original text: str = spam foo@bar.com ham baz@qux.com eggs match = re.search(r ([\w.-]+)@([\w.-]+), str) # using raw string is convinient if match: print match:, match.group() # foo@bar.com print submatch:, match.group(1) # foo else: print not found print re.findall(r [\w.-]+@[\w.-]+, str) # [ foo@bar.com, baz@qux.com ] # return a list of tuples instead of strings submatches > 1 print re.findall(r ([\w.-]+)@([\w.-]+), str) # [( foo, bar.com ), ( baz, qux.com )] print re.sub(r ([\w.-]+)@([\w.-]+), r \1@quxx.com, str) # spam foo@quxx.com ham baz@quxx.com eggs OOP init str Operator Overloading add and radd ref Polymorphism Inheritance Standard Library 4 Chapter 1. Python

9 CHAPTER 2 Javascript 2.1 Javascript Core Objects Creation Literal With new Object.create() Note: Introduced in ECMAScript 5 Object.create(proto [, propertiesobject]) var o; o = Object.create(null); //with no prototype o = {}; // is equivalent to: o = Object.create(Object.prototype); function Constructor(){} o = new Constructor(); // is equivalent to: o = Object.create(Constructor.prototype); o = Object.create({}, { p: { value: 42 } }) // by default properties ARE NOT writable, enumerable or configurable: o.p = 24 o.p //42 o.q = 12 for (var prop in o) { console.log(prop) //"q" } delete o.p //false //to specify an ES3 property o2 = Object.create({}, { p: { value: 42, writable: true, enumerable: true, configurable: true } }); 5

10 Polyfill: if (typeof Object.create!== function ) { Object.create = function (o, props) { function F() {} F.prototype = o; } if (typeof (props) === "object") { for (prop in props) { if (props.hasownproperty((prop))) { F[prop] = props[prop]; } } } return new F(); }; Properties Querying and Setting obj.prop obj["prop"] Deleting delete Testing prop in obj return true for own or inherited properties obj.hasownproperty(prop) return false for inherited properties obj.propertyisenumerable(prop) return true for own property and its enumerable attribute is true. obj.prop!==undefined Enumerating for/in loops (enumerable): for (p in o) { if (!o.hasownproperty(p)) continue; } //filter inherited properties for (p in o) { if (typeof o[p] === "function") continue; } //filter methods Note: Introduced in ECMAScript 5 6 Chapter 2. Javascript

11 Object.keys(obj) return enumerable own properties Object.getOwnPropertyNames(obj) return enumerable and non-enumerable own properties Getters and Setters Note: Introduced in ECMAScript 5 Property Attributes Note: Introduced in ECMAScript 5 Object.getOwnPropertyDescriptor(obj, prop) Object.defineProperty(obj, prop, descriptor) Object Attributes prototype class extensible Serializing Methods Functions Invocation Method Invocation Function Invocation Constructor Invocation Apply Invocation In this case, this in the nested function is bound to the global object: var o = { value: 1, outer: function () { var inner = function () { console.log(this); }; inner(); //bound to global object 2.1. Javascript Core 7

12 } }; o.outer(); Workaround: var o = { value: 1, outer: function () { var that = this; //assign this to a variable var inner = function () { console.log(that); console.log(that.value); }; inner(); } }; o.outer(); //have access to outer s variable Arguments Return Exceptions If return value is not specified, then undefined is returned. If the function is invoked with new and the return value is not an object, then this (the new object) is returned Inheritance The true prototype of an object is held by [[Prototype]] internal property: function Foo () {} var bar = new Foo(); //the [[Prototype]] of bar is Foo.prototype function Baz () {} // Baz.prototype = new Foo(); //the [[Prototype]] of Baz.prototype is changed to Foo.prototype. 8 Chapter 2. Javascript

13 Foo Function prototype constructor [[Prototype]] [[Prototype]] constructor prototype Foo.prototype Function.prototype [[Prototype]] [[Prototype]] Object.prototype [[Prototype]] [[Prototype]] constructor prototype null Object obj instanceof Constructor tests whether obj is in Constructor.prototype s prototype chain. proto.isprototypeof(obj) tests whether obj is in proto s prototype chain. Note: Introduced in ECMAScript 5 Object.getPrototypeOf(obj) Warning: Not standard obj. proto 2.1. Javascript Core 9

14 10 Chapter 2. Javascript

15 CHAPTER 3 CSS 3.1 CSS Core 11

16 12 Chapter 3. CSS

17 CHAPTER 4 HTML 4.1 HTML Core 13

18 14 Chapter 4. HTML

19 CHAPTER 5 Database 5.1 SQL 15

20 16 Chapter 5. Database

21 CHAPTER 6 Git 6.1 Git 17

22 18 Chapter 6. Git

23 CHAPTER 7 Testing 7.1 Testing Basic 7.2 Selenium 19

24 20 Chapter 7. Testing

25 CHAPTER 8 Linux 8.1 Linux Basic 8.2 Arch Linux 21

26 22 Chapter 8. Linux

27 CHAPTER 9 Indices and tables genindex modindex search 23

JavaScript: Sort of a Big Deal,

JavaScript: Sort of a Big Deal, : Sort of a Big Deal, But Sort of Quirky... March 20, 2017 Lisp in C s Clothing (Crockford, 2001) Dynamically Typed: no static type annotations or type checks. C-Like Syntax: curly-braces, for, semicolons,

More information

Harmony Highlights Proxies & Traits. Tom Van Cutsem Mark S. Miller

Harmony Highlights Proxies & Traits. Tom Van Cutsem Mark S. Miller Harmony Highlights Proxies & Traits Tom Van Cutsem Mark S. Miller 1 Ecmascript 5 Strict Mode: guards against common pitfalls rejects confusing features (e.g. with statement) throws exceptions instead of

More information

Proxies Design Principles for Robust OO Intercession APIs

Proxies Design Principles for Robust OO Intercession APIs Proxies Design Principles for Robust OO Intercession APIs Tom Van Cutsem Mark S. Miller Overview Context: a new -programming API for Javascript (d on ECMAScript 5th ed.) Focus on intercession, intercepting

More information

JAVASCRIPT AND JQUERY: AN INTRODUCTION (WEB PROGRAMMING, X452.1)

JAVASCRIPT AND JQUERY: AN INTRODUCTION (WEB PROGRAMMING, X452.1) Technology & Information Management Instructor: Michael Kremer, Ph.D. Class 4 Professional Program: Data Administration and Management JAVASCRIPT AND JQUERY: AN INTRODUCTION (WEB PROGRAMMING, X452.1) AGENDA

More information

Classes vs Simple Object Delegation In JavaScript

Classes vs Simple Object Delegation In JavaScript Classes vs Simple Object Delegation In JavaScript Things to consider... Do we want to (deeply) understand what our code is doing? Do we want encapsulation? Do we want true private variables and functions?

More information

Symbols. accessor properties, attributes, creating, adding properties, 8 anonymous functions, 20, 80

Symbols. accessor properties, attributes, creating, adding properties, 8 anonymous functions, 20, 80 Index Symbols { } (braces) for function contents, 18 and object properties, 9 == (double equals operator), 5 === (triple equals operator), 5 [ ] (square brackets) for array literals, 10 for property access,

More information

JavaScript. Training Offer for JavaScript Introduction JavaScript. JavaScript Objects

JavaScript. Training Offer for JavaScript Introduction JavaScript. JavaScript Objects JavaScript CAC Noida is an ISO 9001:2015 certified training center with professional experience that dates back to 2005. The vision is to provide professional education merging corporate culture globally

More information

The course is supplemented by numerous hands-on labs that help attendees reinforce their theoretical knowledge of the learned material.

The course is supplemented by numerous hands-on labs that help attendees reinforce their theoretical knowledge of the learned material. Lincoln Land Community College Capital City Training Center 130 West Mason Springfield, IL 62702 217-782-7436 www.llcc.edu/cctc WA2442 Introduction to JavaScript Objectives This intensive training course

More information

Node.js Training JavaScript. Richard richardrodger.com

Node.js Training JavaScript. Richard richardrodger.com Node.js Training JavaScript Richard Rodger @rjrodger richardrodger.com richard.rodger@nearform.com A New Look at JavaScript Embracing JavaScript JavaScript Data Structures JavaScript Functions Functional

More information

The 5 capacities we look for in candidates

The 5 capacities we look for in candidates The 5 capacities we look for in candidates 1. Analytical problem solving with code 2. Technical communication (can I implement your approach just from your explanation) 3. Engineering best practices and

More information

traits.js Robust Object Composition and High-integrity Objects for ECMAScript 5 Tom Van Cutsem Mark S. Miller Abstract 1.

traits.js Robust Object Composition and High-integrity Objects for ECMAScript 5 Tom Van Cutsem Mark S. Miller Abstract 1. traits.js Robust Object Composition and High-integrity Objects for ECMAScript 5 Tom Van Cutsem Software Languages Lab Vrije Universiteit Brussel, Belgium tvcutsem@vub.ac.be Mark S. Miller Google, USA erights@google.com

More information

Introduction to JavaScript p. 1 JavaScript Myths p. 2 Versions of JavaScript p. 2 Client-Side JavaScript p. 3 JavaScript in Other Contexts p.

Introduction to JavaScript p. 1 JavaScript Myths p. 2 Versions of JavaScript p. 2 Client-Side JavaScript p. 3 JavaScript in Other Contexts p. Preface p. xiii Introduction to JavaScript p. 1 JavaScript Myths p. 2 Versions of JavaScript p. 2 Client-Side JavaScript p. 3 JavaScript in Other Contexts p. 5 Client-Side JavaScript: Executable Content

More information

Object Oriented JavaScript (Part the Second)

Object Oriented JavaScript (Part the Second) E FRE e! icl t r A FEATURE Database Versioning with Liquibase Object Oriented JavaScript (Part the Second) Jordan Kasper DisplayInfo() Related URLs: Guide to JavaScript Inheritance by Axel Rauschmeyer

More information

traits.js Robust Object Composition and High-integrity Objects for ECMAScript 5 Tom Van Cutsem Mark S. Miller Abstract 1.

traits.js Robust Object Composition and High-integrity Objects for ECMAScript 5 Tom Van Cutsem Mark S. Miller Abstract 1. traits.js Robust Object Composition and High-integrity Objects for ECMAScript 5 Tom Van Cutsem Software Languages Lab Vrije Universiteit Brussel, Belgium tvcutsem@vub.ac.be Mark S. Miller Google, USA erights@google.com

More information

Decision Making in C

Decision Making in C Decision Making in C Decision making structures require that the programmer specify one or more conditions to be evaluated or tested by the program, along with a statement or statements to be executed

More information

JavaScript: The Good Parts

JavaScript: The Good Parts JavaScript: The Good Parts The World's Most Misunderstood Programming Language Douglas Crockford Yahoo! Inc. A language of many contrasts. The broadest range of programmer skills of any programming language.

More information

COMP519 Web Programming Lecture 21: Python (Part 5) Handouts

COMP519 Web Programming Lecture 21: Python (Part 5) Handouts COMP519 Web Programming Lecture 21: Python (Part 5) Handouts Ullrich Hustadt Department of Computer Science School of Electrical Engineering, Electronics, and Computer Science University of Liverpool Functions

More information

FALL 2017 CS 498RK JAVASCRIPT. Fashionable and Functional!

FALL 2017 CS 498RK JAVASCRIPT. Fashionable and Functional! CS 498RK FALL 2017 JAVASCRIPT Fashionable and Functional! JAVASCRIPT popular scripting language on the Web, supported by browsers separate scripting from structure (HTML) and presentation (CSS) client-

More information

JavaScript: The Good Parts. Douglas Crockford Yahoo! Inc.

JavaScript: The Good Parts. Douglas Crockford Yahoo! Inc. JavaScript: The Good Parts Douglas Crockford Yahoo! Inc. http://www.crockford.com/codecamp/ The World's Most Popular Programming Language The World's Most Popular Programming Language The World's Most

More information

Functional JavaScript. Douglas Crockford Yahoo! Inc.

Functional JavaScript. Douglas Crockford Yahoo! Inc. Functional JavaScript Douglas Crockford Yahoo! Inc. The World's Most Misunderstood Programming Language A language of many contrasts. The broadest range of programmer skills of any programming language.

More information

COMP519 Web Programming Lecture 14: JavaScript (Part 5) Handouts

COMP519 Web Programming Lecture 14: JavaScript (Part 5) Handouts COMP519 Web Programming Lecture 14: JavaScript (Part 5) Handouts Ullrich Hustadt Department of Computer Science School of Electrical Engineering, Electronics, and Computer Science University of Liverpool

More information

JavaScript CS 4640 Programming Languages for Web Applications

JavaScript CS 4640 Programming Languages for Web Applications JavaScript CS 4640 Programming Languages for Web Applications 1 How HTML, CSS, and JS Fit Together {css} javascript() Content layer The HTML gives the page structure and adds semantics Presentation

More information

Static Analysis for JavaScript

Static Analysis for JavaScript Static Analysis for JavaScript Adi Yoga Sidi Prabawa Supervisor: Associate Professor Chin Wei Ngan Department of Computer Science School of Computing National University of Singapore June 30, 2013 Abstract

More information

Busy.NET Developer's Guide to ECMAScript

Busy.NET Developer's Guide to ECMAScript Busy.NET Developer's Guide to ECMAScript Ted Neward http://www.tedneward.com Level: Intermediate Credentials Who is this guy? Principal Consultant, architect, mentor BEA Technical Director, Microsoft MVP

More information

JAVASCRIPT AND JQUERY: AN INTRODUCTION (WEB PROGRAMMING, X452.1)

JAVASCRIPT AND JQUERY: AN INTRODUCTION (WEB PROGRAMMING, X452.1) Technology & Information Management Instructor: Michael Kremer, Ph.D. Class 2 Professional Program: Data Administration and Management JAVASCRIPT AND JQUERY: AN INTRODUCTION (WEB PROGRAMMING, X452.1) AGENDA

More information

Robust Trait Composition for Javascript

Robust Trait Composition for Javascript Robust Trait Composition for Javascript Tom Van Cutsem a, Mark S. Miller b a Software Languages Lab, Vrije Universiteit Brussel, Belgium b Google, USA Abstract We introduce traits.js, a small, portable

More information

JavaScript CS 4640 Programming Languages for Web Applications

JavaScript CS 4640 Programming Languages for Web Applications JavaScript CS 4640 Programming Languages for Web Applications 1 How HTML, CSS, and JS Fit Together {css} javascript() Content layer The HTML gives the page structure and adds semantics Presentation

More information

JavaScript Programming

JavaScript Programming JavaScript Programming Mendel Rosenblum 1 How do you program in JavaScript? From Wikipedia:... supporting object-oriented, imperative, and functional programming... Mostly programming conventions (i.e.

More information

ECE 364 Software Engineering Tools Laboratory. Lecture 7 Python: Object Oriented Programming

ECE 364 Software Engineering Tools Laboratory. Lecture 7 Python: Object Oriented Programming ECE 364 Software Engineering Tools Laboratory Lecture 7 Python: Object Oriented Programming 1 Lecture Summary Object Oriented Programming Concepts Object Oriented Programming in Python 2 Object Oriented

More information

JavaScript. What s wrong with JavaScript?

JavaScript. What s wrong with JavaScript? JavaScript 1 What s wrong with JavaScript? A very powerful language, yet Often hated Browser inconsistencies Misunderstood Developers find it painful Lagging tool support Bad name for a language! Java

More information

JavaScript for C# Programmers Kevin

JavaScript for C# Programmers Kevin JavaScript for C# Programmers Kevin Jones kevin@rocksolidknowledge.com @kevinrjones http://www.github.com/kevinrjones Agenda Types Basic Syntax Objects Functions 2 Basics 'C' like language braces brackets

More information

Sorting HOW TO Release 2.7.6

Sorting HOW TO Release 2.7.6 Sorting HOW TO Release 2.7.6 Guido van Rossum Fred L. Drake, Jr., editor November 10, 2013 Python Software Foundation Email: docs@python.org Contents 1 Sorting Basics i 2 Key Functions ii 3 Operator Module

More information

JavaScript Lecture 3b (Some language features)

JavaScript Lecture 3b (Some language features) Lecture 3b (Some language features) Waterford Institute of Technology June 10, 2016 John Fitzgerald Waterford Institute of Technology, Lecture 3b (Some language features) 1/30 Introduction Topics discussed

More information

CS61A Lecture 20 Object Oriented Programming: Implementation. Jom Magrotker UC Berkeley EECS July 23, 2012

CS61A Lecture 20 Object Oriented Programming: Implementation. Jom Magrotker UC Berkeley EECS July 23, 2012 CS61A Lecture 20 Object Oriented Programming: Implementation Jom Magrotker UC Berkeley EECS July 23, 2012 COMPUTER SCIENCE IN THE NEWS http://www.theengineer.co.uk/sectors/electronics/news/researchers

More information

traity Documentation Release Sean Ross-Ross

traity Documentation Release Sean Ross-Ross traity Documentation Release 0.0.1 Sean Ross-Ross August 16, 2016 Contents 1 Traity s API 3 1.1 Events.................................................. 3 1.2 Static Properties.............................................

More information

Page. User. Sorting Mini-HOW TO. Search Titles Text. More Actions: HowTo Sorting. HowTo/Sorting

Page. User. Sorting Mini-HOW TO. Search Titles Text. More Actions: HowTo Sorting. HowTo/Sorting 1 of 8 01/09/2013 04:30 PM This is Google's cache of http://wiki.python.org/moin/howto/sorting/. It is a snapshot of the page as it appeared on Jan 3, 2013 05:54:53 GMT. The current page could have changed

More information

Python source materials

Python source materials xkcd.com/353 Python source materials Bob Dondero s Python summary from Spring 2011 http://www.cs.princeton.edu/courses/archive/spring11/cos333/ reading/pythonsummary.pdf bwk s Python help file: http://

More information

JavaScript. History. Adding JavaScript to a page. CS144: Web Applications

JavaScript. History. Adding JavaScript to a page. CS144: Web Applications JavaScript Started as a simple script in a Web page that is interpreted and run by the browser Supported by most modern browsers Allows dynamic update of a web page More generally, allows running an arbitrary

More information

COMP 401 Spring 2013 Midterm 1

COMP 401 Spring 2013 Midterm 1 COMP 401 Spring 2013 Midterm 1 I have not received nor given any unauthorized assistance in completing this exam. Signature: Name: PID: Please be sure to put your PID at the top of each page. This page

More information

Introduction to Python programming, II

Introduction to Python programming, II Grid Computing Competence Center Introduction to Python programming, II Riccardo Murri Grid Computing Competence Center, Organisch-Chemisches Institut, University of Zurich Nov. 16, 2011 Today s class

More information

pysqlw Documentation Release plausibility

pysqlw Documentation Release plausibility pysqlw Documentation Release 1.3.0 plausibility January 26, 2013 CONTENTS 1 Documentation 3 1.1 Usage................................................... 3 1.2 pysqlw wrappers.............................................

More information

Webgurukul Programming Language Course

Webgurukul Programming Language Course Webgurukul Programming Language Course Take One step towards IT profession with us Python Syllabus Python Training Overview > What are the Python Course Pre-requisites > Objectives of the Course > Who

More information

Picolo: A Simple Python Framework for Introducing Component Principles

Picolo: A Simple Python Framework for Introducing Component Principles Picolo: A Simple Python Framework for Introducing Component Principles Raphaël Marvie LIFL University of Lille 1 (France) raphael.marvie@lifl.fr Abstract Components have now become a cornerstone of software

More information

Babu Madhav Institute of Information Technology, UTU 2015

Babu Madhav Institute of Information Technology, UTU 2015 Five years Integrated M.Sc.(IT)(Semester 5) Question Bank 060010502:Programming in Python Unit-1:Introduction To Python Q-1 Answer the following Questions in short. 1. Which operator is used for slicing?

More information

UNIT -II. Language-History and Versions Introduction JavaScript in Perspective-

UNIT -II. Language-History and Versions Introduction JavaScript in Perspective- UNIT -II Style Sheets: CSS-Introduction to Cascading Style Sheets-Features- Core Syntax-Style Sheets and HTML Style Rle Cascading and Inheritance-Text Properties-Box Model Normal Flow Box Layout- Beyond

More information

Subprogram Concept. COMP3220 Principle of Programming Languages. Zhitao Gong Spring

Subprogram Concept. COMP3220 Principle of Programming Languages. Zhitao Gong Spring Subprogram Concept COMP3220 Principle of Programming Languages Zhitao Gong 2016 Spring 1 / 30 Outline Introduction Closure Parameter Passing Summary 2 / 30 Introduction Tow fundamental abstractions process

More information

Client-Side Web Technologies. JavaScript Part I

Client-Side Web Technologies. JavaScript Part I Client-Side Web Technologies JavaScript Part I JavaScript First appeared in 1996 in Netscape Navigator Main purpose was to handle input validation that was currently being done server-side Now a powerful

More information

Sample CS 142 Midterm Examination

Sample CS 142 Midterm Examination Sample CS 142 Midterm Examination Winter Quarter 2017 You have 1.5 hours (90 minutes) for this examination; the number of points for each question indicates roughly how many minutes you should spend on

More information

Lecture 5: Python PYTHON

Lecture 5: Python PYTHON Lecture 5: Python PYTHON xkcd.com/208 xkcd.com/519 Python constructs constants, variables, types operators and expressions statements, control flow aggregates functions libraries classes modules etc. Constants,

More information

COMP519 Web Programming Lecture 20: Python (Part 4) Handouts

COMP519 Web Programming Lecture 20: Python (Part 4) Handouts COMP519 Web Programming Lecture 20: Python (Part 4) Handouts Ullrich Hustadt Department of Computer Science School of Electrical Engineering, Electronics, and Computer Science University of Liverpool Contents

More information

Kaiso Documentation. Release 0.1-dev. onefinestay

Kaiso Documentation. Release 0.1-dev. onefinestay Kaiso Documentation Release 0.1-dev onefinestay Sep 27, 2017 Contents 1 Neo4j visualization style 3 2 Contents 5 2.1 API Reference.............................................. 5 3 Indices and tables

More information

Javascript s Meta-object Protocol. Tom Van Cutsem

Javascript s Meta-object Protocol. Tom Van Cutsem Javascript s Meta-object Protocol Tom Van Cutsem Talk Outline Brief walkthrough of Javascript Proxies in ECMAScript 6 Meta-object protocols How proxies make Javascript s MOP explicit Example: membranes

More information

JavaScript Lecture 1

JavaScript Lecture 1 JavaScript Lecture 1 Waterford Institute of Technology May 17, 2016 John Fitzgerald Waterford Institute of Technology, JavaScriptLecture 1 1/31 Javascript Extent of this course A condensed basic JavaScript

More information

Meta Classes. Chapter 4

Meta Classes. Chapter 4 Chapter 4 Meta Classes Python classes are also objects, with the particularity that these can create other objects (their instances). Since classes are objects, we can assign them to variables, copy them,

More information

Python Training. Complete Practical & Real-time Trainings. A Unit of SequelGate Innovative Technologies Pvt. Ltd.

Python Training. Complete Practical & Real-time Trainings. A Unit of SequelGate Innovative Technologies Pvt. Ltd. Python Training Complete Practical & Real-time Trainings A Unit of. ISO Certified Training Institute Microsoft Certified Partner Training Highlights : Complete Practical and Real-time Scenarios Session

More information

Classical Object-Oriented Programming with ECMAScript. Abstract. 1 Class-Like Objects in ECMA- Script. Contents

Classical Object-Oriented Programming with ECMAScript. Abstract. 1 Class-Like Objects in ECMA- Script. Contents Classical Object-Oriented Programming with ECMAScript Abstract Mike Gerwitz May 2012 ECMAScript (more popularly known by the name Java- Script ) is the language of the web. In the decades past, it has

More information

Week. Lecture Topic day (including assignment/test) 1 st 1 st Introduction to Module 1 st. Practical

Week. Lecture Topic day (including assignment/test) 1 st 1 st Introduction to Module 1 st. Practical Name of faculty: Gaurav Gambhir Discipline: Computer Science Semester: 6 th Subject: CSE 304 N - Essentials of Information Technology Lesson Plan Duration: 15 Weeks (from January, 2018 to April, 2018)

More information

Class, Variable, Constructor, Object, Method Questions

Class, Variable, Constructor, Object, Method Questions Class, Variable, Constructor, Object, Method Questions http://www.wideskills.com/java-interview-questions/java-classes-andobjects-interview-questions https://www.careerride.com/java-objects-classes-methods.aspx

More information

JavaScript: Features, Trends, and Static Analysis

JavaScript: Features, Trends, and Static Analysis JavaScript: Features, Trends, and Static Analysis Joonwon Choi ROPAS Show & Tell 01/25/2013 1 Contents What is JavaScript? Features Trends Static Analysis Conclusion & Future Works 2 What is JavaScript?

More information

CSE : Python Programming

CSE : Python Programming CSE 399-004: Python Programming Lecture 2: Data, Classes, and Modules January 22, 2007 http://www.seas.upenn.edu/~cse39904/ Administrative things Teaching assistant Brian Summa (bsumma @ seas.upenn.edu)

More information

Announcements. Homework 1 due Monday 10/12 (today) Homework 2 released next Monday 10/19 is due 11/2

Announcements. Homework 1 due Monday 10/12 (today) Homework 2 released next Monday 10/19 is due 11/2 61A Extra Lecture 6 Announcements Homework 1 due Monday 10/12 (today) Homework 2 released next Monday 10/19 is due 11/2 Homework 3 is to complete an extension to Project 4 Due at the same time as Project

More information

Introduction to Python

Introduction to Python Introduction to Python Version 1.1.5 (12/29/2008) [CG] Page 1 of 243 Introduction...6 About Python...7 The Python Interpreter...9 Exercises...11 Python Compilation...12 Python Scripts in Linux/Unix & Windows...14

More information

MEMOIZATION, RECURSIVE DATA, AND SETS

MEMOIZATION, RECURSIVE DATA, AND SETS MEMOIZATION, RECURSIVE DATA, AND SETS 4b COMPUTER SCIENCE 61A July 18, 2013 1 Memoization Later in this class, you ll learn about orders of growth and how to analyze exactly how efficient (or inefficient)

More information

doubles Documentation

doubles Documentation doubles Documentation Release 1.1.0 Jimmy Cuadra August 23, 2015 Contents 1 Installation 3 2 Integration with test frameworks 5 2.1 Pytest................................................... 5 2.2 Nose...................................................

More information

Decorators. Userland Extensions to ES6 Classes

Decorators. Userland Extensions to ES6 Classes Decorators Userland Extensions to ES6 Classes Userland Classes Class.new({ init: function(firstname, lastname) { this.firstname = firstname; this.lastname = lastname; this._super();, fullname: function()

More information

Python Basics. Lecture and Lab 5 Day Course. Python Basics

Python Basics. Lecture and Lab 5 Day Course. Python Basics Python Basics Lecture and Lab 5 Day Course Course Overview Python, is an interpreted, object-oriented, high-level language that can get work done in a hurry. A tool that can improve all professionals ability

More information

CS2304: Python for Java Programmers. CS2304: Advanced Function Topics

CS2304: Python for Java Programmers. CS2304: Advanced Function Topics CS2304: Advanced Function Topics Functions With An Arbitrary Number of Parameters Let s say you wanted to create a function where you don t know the exact number of parameters. Python gives you a few ways

More information

CSE : Python Programming. Decorators. Announcements. The decorator pattern. The decorator pattern. The decorator pattern

CSE : Python Programming. Decorators. Announcements. The decorator pattern. The decorator pattern. The decorator pattern CSE 399-004: Python Programming Lecture 12: Decorators April 9, 200 http://www.seas.upenn.edu/~cse39904/ Announcements Projects (code and documentation) are due: April 20, 200 at pm There will be informal

More information

Python Programming: Lecture 3 Functions

Python Programming: Lecture 3 Functions Python Programming: Lecture 3 Functions Lili Dworkin University of Pennsylvania Last Week s Quiz In one line, write code that will turn the list [9, 9, 9] into the string 90909. Last Week s Quiz In one

More information

Midterm Exam. 5. What is the character - (minus) used for in JavaScript? Give as many answers as you can.

Midterm Exam. 5. What is the character - (minus) used for in JavaScript? Give as many answers as you can. First Name Last Name CSCi 90.3 March 23, 2010 Midterm Exam Instructions: For multiple choice questions, circle the letter of the one best choice unless the question explicitly states that it might have

More information

A Tested Semantics for Getters, Setters, and Eval in JavaScript

A Tested Semantics for Getters, Setters, and Eval in JavaScript A Tested Semantics for Getters, Setters, and Eval in JavaScript Joe Gibbs Politz Matthew J. Carroll Benjamin S. Lerner Justin Pombrio Shriram Krishnamurthi Brown University www.jswebtools.org Abstract

More information

This page intentionally left blank

This page intentionally left blank This page intentionally left blank arting Out with Java: From Control Structures through Objects International Edition - PDF - PDF - PDF Cover Contents Preface Chapter 1 Introduction to Computers and Java

More information

Subclass Gist Example: Chess Super Keyword Shadowing Overriding Why? L10 - Polymorphism and Abstract Classes The Four Principles of Object Oriented

Subclass Gist Example: Chess Super Keyword Shadowing Overriding Why? L10 - Polymorphism and Abstract Classes The Four Principles of Object Oriented Table of Contents L01 - Introduction L02 - Strings Some Examples Reserved Characters Operations Immutability Equality Wrappers and Primitives Boxing/Unboxing Boxing Unboxing Formatting L03 - Input and

More information

arxiv: v1 [cs.pl] 15 Dec 2009

arxiv: v1 [cs.pl] 15 Dec 2009 JSC : A JavaScript Object System Artur Ventura artur.ventura@ist.utl.pt January 0, 018 arxiv:091.861v1 [cs.pl] 15 Dec 009 Abstract The JSC language is a superset of JavaScript designed to ease the development

More information

The JavaScript Language

The JavaScript Language The JavaScript Language INTRODUCTION, CORE JAVASCRIPT Laura Farinetti - DAUIN What and why JavaScript? JavaScript is a lightweight, interpreted programming language with object-oriented capabilities primarily

More information

maya-cmds-help Documentation

maya-cmds-help Documentation maya-cmds-help Documentation Release Andres Weber May 28, 2017 Contents 1 1.1 Synopsis 3 1.1 1.1.1 Features.............................................. 3 2 1.2 Installation 5 2.1 1.2.1 Windows, etc............................................

More information

CS61B Lecture #7. Announcements:

CS61B Lecture #7. Announcements: Announcements: CS61B Lecture #7 New discussion section: Tuesday 2 3PM in 310 Soda. New lab section: Thursday 2 4PM in 273 Soda. Programming Contest coming up: 5 October (new date). Watch for details. Last

More information

Powerful JavaScript OOP concept here and now. CoffeeScript, TypeScript, etc

Powerful JavaScript OOP concept here and now. CoffeeScript, TypeScript, etc Powerful JavaScript OOP concept here and now. CoffeeScript, TypeScript, etc JavaScript EasyOOP Inheritance, method overriding, constructor, anonymous classes, mixing, dynamic class extending, packaging,

More information

Positional, keyword and default arguments

Positional, keyword and default arguments O More on Python n O Functions n Positional, keyword and default arguments in repl: >>> def func(fst, snd, default="best!"):... print(fst, snd, default)... >>> func(snd='is', fst='python') ('Python', 'is',

More information

JavaScript. History. Adding JavaScript to a page. CS144: Web Applications

JavaScript. History. Adding JavaScript to a page. CS144: Web Applications JavaScript Started as a simple script in a Web page that is interpreted and run by the browser Supported by most modern browsers Allows dynamic update of a web page More generally, allows running an arbitrary

More information

Javascript : the language. accu2009 conference 25 th April 2009 Tony Barrett-Powell

Javascript : the language. accu2009 conference 25 th April 2009 Tony Barrett-Powell Javascript : the language accu2009 conference 25 th April 2009 Tony Barrett-Powell Introduction Exploring aspects of the language Considering styles Procedural Object-oriented Functional Some bad parts

More information

Lecture 3: The Basics of JavaScript. Background. Needs for Programming Capability. Origin of JavaScript. Using Client-side JavaScript

Lecture 3: The Basics of JavaScript. Background. Needs for Programming Capability. Origin of JavaScript. Using Client-side JavaScript Lecture 3: The Basics of JavaScript Wendy Liu CSC309F Fall 2007 Background Origin and facts 1 2 Needs for Programming Capability XHTML and CSS allows the browser to passively display static content How

More information

ADsafety. Type-based Verification of JavaScript Sandboxing. Joe Gibbs Politz Spiridon Aristides Eliopoulos Arjun Guha Shriram Krishnamurthi

ADsafety. Type-based Verification of JavaScript Sandboxing. Joe Gibbs Politz Spiridon Aristides Eliopoulos Arjun Guha Shriram Krishnamurthi ADsafety Type-based Verification of JavaScript Sandboxing Joe Gibbs Politz Spiridon Aristides Eliopoulos Arjun Guha Shriram Krishnamurthi 1 2 3 third-party ad third-party ad 4 Who is running code in your

More information

PYTHON CONTENT NOTE: Almost every task is explained with an example

PYTHON CONTENT NOTE: Almost every task is explained with an example PYTHON CONTENT NOTE: Almost every task is explained with an example Introduction: 1. What is a script and program? 2. Difference between scripting and programming languages? 3. What is Python? 4. Characteristics

More information

<Insert Picture Here> Adventures in JSR-292 or How To Be A Duck Without Really Trying

<Insert Picture Here> Adventures in JSR-292 or How To Be A Duck Without Really Trying Adventures in JSR-292 or How To Be A Duck Without Really Trying Jim Laskey Multi-language Lead Java Language and Tools Group The following is intended to outline our general product

More information

Boot Camp JavaScript Sioux, March 31, 2011

Boot Camp JavaScript  Sioux, March 31, 2011 Boot Camp JavaScript http://rix0r.nl/bootcamp Sioux, March 31, 2011 Agenda Part 1: JavaScript the Language Short break Part 2: JavaScript in the Browser History May 1995 LiveScript is written by Brendan

More information

pysharedutils Documentation

pysharedutils Documentation pysharedutils Documentation Release 0.5.0 Joel James August 07, 2017 Contents 1 pysharedutils 1 2 Indices and tables 13 i ii CHAPTER 1 pysharedutils pysharedutils is a convenient utility module which

More information

Chapter 1 Summary. Chapter 2 Summary. end of a string, in which case the string can span multiple lines.

Chapter 1 Summary. Chapter 2 Summary. end of a string, in which case the string can span multiple lines. Chapter 1 Summary Comments are indicated by a hash sign # (also known as the pound or number sign). Text to the right of the hash sign is ignored. (But, hash loses its special meaning if it is part of

More information

MatchaScript: Language Reference Manual Programming Languages & Translators Spring 2017

MatchaScript: Language Reference Manual Programming Languages & Translators Spring 2017 MatchaScript: Language Reference Manual Programming Languages & Translators Spring 2017 Language Guru: Kimberly Hou - kjh2146 Systems Architect: Rebecca Mahany - rlm2175 Manager: Jordi Orbay - jao2154

More information

Lecture #15: Generic Functions and Expressivity. Last modified: Wed Mar 1 15:51: CS61A: Lecture #16 1

Lecture #15: Generic Functions and Expressivity. Last modified: Wed Mar 1 15:51: CS61A: Lecture #16 1 Lecture #15: Generic Functions and Expressivity Last modified: Wed Mar 1 15:51:48 2017 CS61A: Lecture #16 1 Consider the function find: Generic Programming def find(l, x, k): """Return the index in L of

More information

Python A Technical Introduction. James Heliotis Rochester Institute of Technology December, 2009

Python A Technical Introduction. James Heliotis Rochester Institute of Technology December, 2009 Python A Technical Introduction James Heliotis Rochester Institute of Technology December, 2009 Background & Overview Beginnings Developed by Guido Van Rossum, BDFL, in 1990 (Guido is a Monty Python fan.)

More information

More on JavaScript Functions

More on JavaScript Functions More on JavaScript Functions Nesting Function Definitions Function definitions can be nested. function hypotenuse(a, b) function square(x) return x * x; return Math.sqrt(square(a) + square(b));

More information

Language Features. 1. The primitive types int, double, and boolean are part of the AP

Language Features. 1. The primitive types int, double, and boolean are part of the AP Language Features 1. The primitive types int, double, and boolean are part of the AP short, long, byte, char, and float are not in the subset. In particular, students need not be aware that strings are

More information

Dogeon Documentation. Release Lin Ju

Dogeon Documentation. Release Lin Ju Dogeon Documentation Release 1.0.0 Lin Ju June 07, 2014 Contents 1 Indices and tables 7 Python Module Index 9 i ii DSON (Doge Serialized Object Notation) is a data-interchange format,

More information

Frontend II: Javascript and DOM Programming. Wednesday, January 7, 15

Frontend II: Javascript and DOM Programming. Wednesday, January 7, 15 6.148 Frontend II: Javascript and DOM Programming Let s talk about Javascript :) Why Javascript? Designed in ten days in December 1995! How are they similar? Javascript is to Java as hamster is to ham

More information

JavaScript: The Definitive Guide

JavaScript: The Definitive Guide T "T~ :15 FLA HO H' 15 SIXTH EDITION JavaScript: The Definitive Guide David Flanagan O'REILLY Beijing Cambridge Farnham Ktiln Sebastopol Tokyo Table of Contents Preface....................................................................

More information

Stepic Plugins Documentation

Stepic Plugins Documentation Stepic Plugins Documentation Release 0 Stepic Team May 06, 2015 Contents 1 Introduction 3 1.1 Quiz Architecture............................................ 3 1.2 Backend Overview............................................

More information

OstrichLib Documentation

OstrichLib Documentation OstrichLib Documentation Release 0.0.0 Itamar Ostricher May 10, 2016 Contents 1 utils package 3 1.1 collections utils module......................................... 3 1.2 path utils module.............................................

More information

The JavaScript Language

The JavaScript Language The JavaScript Language INTRODUCTION, CORE JAVASCRIPT Laura Farinetti - DAUIN What and why JavaScript? JavaScript is a lightweight, interpreted programming language with object-oriented capabilities primarily

More information

INTRODUCTION TO JAVASCRIPT

INTRODUCTION TO JAVASCRIPT INTRODUCTION TO JAVASCRIPT JAVASCRIPT OBJECT SYNTAX var empty_object = {} var student ={ "first name": "Daniel", "last name": "Graham", title: "PHD", } IT IS OK TO INCLUDE OR EXCLUDE TRAILING COMMAS JAVASCRIPT

More information