Compiler Errors. Flash CS4 Professional ActionScript 3.0 Language Reference. 1 of 18 9/6/2010 9:40 PM

Size: px
Start display at page:

Download "Compiler Errors. Flash CS4 Professional ActionScript 3.0 Language Reference. 1 of 18 9/6/2010 9:40 PM"

Transcription

1 1 of 18 9/6/2010 9:40 PM Flash CS4 Professional ActionScript 3.0 Language Reference Language Reference only Compiler Errors Home All Packages All Classes Language Elements Index Appendixes Conventions Frames Compiler Warnings Runtime Errors The following is a list of compilation errors that the compiler generates when it encounters invalid code. A subset of these errors is detected only when compiling code in strict mode. Strict mode adds three constraints not found in the standard language: Expressions have static types and type errors are verification errors. Additional verification rules catch common programming errors. Verification errors are reported ahead of time. These are the verification errors that occur only in strict mode: Function call signature matching, which checks the number of parameters supplied and their types. Duplicate definition conflicts. Unbound references, which occur when accessing methods or properties that are not defined at compile time. Dynamically adding properties on sealed objects. Writing to constant variables. Deleting fixed properties. Comparison expressions that use incompatible types. Unfound packages. Code Message Description A reference might be to more than one item. For example, the following uses the namespaces rss and xml, each of which defines a different value for the hello() function. The trace(hello()) statement returns this error because it cannot determine which namespace to use. private namespace rss; private namespace xml; public function ErrorExamples() { use namespace rss; use namespace xml; trace(hello()); 1000 Ambiguous reference to rss function hello():string { return "hola"; xml function hello():string { return "foo"; Correct an ambiguous reference by making the reference specific. The following example uses the form namespace::function to specify which namespace to use: public function ErrorExamples() { trace(rss::hello()); trace(xml::hello()); Access specifiers are not allowed with namespace attributes. Namespace was not found or is not a compile-time You can not use both an access specifier (such as private or public) and a namespace attribute on a definition. The namespace is either unknown or is an expression that could have different values at run time. Check that you are spelling the namespace correctly and that its definition is imported correctly.

2 2 of 18 9/6/2010 9:40 PM constant. A super expression can be used only inside class instance methods. A super statement can be used only inside class instance constructors. Attribute is invalid. The override attribute may be used only on class property definitions. The virtual attribute may be used only on class property definitions. The static attribute may be used only on definitions inside a class. The private attribute may be used only on class property definitions. The intrinsic attribute is no longer supported. Base class is final. The definition of base class %s was not found. Duplicate class definition: Method marked override must override another You cannot use the super statement within static members. You can use the super statement only within class instances. You cannot use the override keyword within a function block. You cannot use the virtual attribute when you declare a property that does not belong to a class (for example, when you declare a variable within a function block). ActionScript 3.0 does not support the intrinsic keyword. The superclass extended because it is marked as final.

3 3 of 18 9/6/2010 9:40 PM method. Duplicate function definition. Cannot override a final accessor Incompatible override Overriding a function that is not marked for override. Cannot redefine a final method. Constructor functions must be instance methods. Functions both static and override. Functions both static and virtual. Functions both final and virtual. Must specify name of variable arguments array. Virtual variables are not supported. Variables native. Variables both final and virtual. Packages nested. You cannot declare more than one function with the same identifier name within the same scope. A function marked override must exactly match the parameter and return type declaration of the function it is overriding. It must have the same number of parameters, each of the same type, and declare the same return type. If any of the parameters are optional, that must match as well. Both functions must use the same access specifier (public, private, and so on) or namespace attribute as well. If a method in a class overrides a method in a base class, you must explicitly declare it by using the override attribute, as this example shows: public override function foo():void{; The method extended because it is marked as final in the base class. The...(rest) parameter definition specifies that all values supplied after...(rest) are collected into any array. You must specify a name for the array, as in the expression function foo(x,...(rest)).

4 4 of 18 9/6/2010 9:40 PM Target of break statement was not found. Target of continue statement was not found. Duplicate label definition. Attributes are not callable. The this keyword can not be used in static methods. It can only be used in instance methods, function closures, and global code Undefined namespace Interface method %s in namespace %s not implemented by class Interface %s was not found. Type was not found or was not a compile-time constant: You cannot use the this keyword within a static member, because this would have no context. The class used as a type declaration is either unknown or is an expression that could have different values at run time. Check that you are importing the correct class and that its package location has not changed. Also, check that the package that contains the code (not the imported class) is defined correctly (for example, make sure to use proper ActionScript 3.0 package syntax, and not ActionScript 2.0 syntax). The error can also occur if the class being referenced is not defined in a namespace that is in use or is not defined as public: public class Foo{ If you are using Flex Builder 2 and the class is in a library, make sure to set the class path for the project Parameter initializer unknown or is not a compile-time constant. Method used as a The value used as the default value for the parameter is either undefined or could have different values at run time. Check that the initializer is spelled correctly, and that the initializer value isn't an expression that could result in different possible values at run time. It is not possible to create an instance of a method of a class. Only global functions can be used in new expressions.

5 5 of 18 9/6/2010 9:40 PM constructor. class D { function xx() { return 22; var d:d = new D(); var x = new d.xx(); // error, method used as constructor function yy() { this.a = 22; var z = new yy(); // no error, global functions can be used as constructors Illegal assignment to a variable specified as constant. Cannot assign to a non-reference value. Return value must be undefined. Constant initializer unknown or is not a compile-time constant. Accessor types must match. Return type of a setter definition must be unspecified or void. You are attempting to use the return statement within a method that has a declared return type void. The value used to initialize the constant is either undefined or could have different values at run time. Check that the initializer is spelled correctly, and that the initializer value isn't an expression that could result in different possible values at run time. You cannot specify a return value for a setter function. For example, the following is invalid: public function set gamma(g:number):number; The following is valid: public function set gamma(g:number):void; Property is write-only. Property is read-only. This property is defined through a getter function, which allows you to retrieve that property's value. There is no setter function defined for this property, however, so it is read-only. In the following example, line 3 generates an error because there is no setter function defined for xx: class D { function get xx() { return 22; var d:d = new D(); d.xx = 44; // error, property is read-only Call to a possibly undefined method %s through a reference with static type Unable to open file: 1064 Invalid metadata. You are calling a method that is not defined. This metadata is unrecognized.

6 6 of 18 9/6/2010 9:40 PM Metadata attributes cannot have more than one element. Implicit coercion of a value of type %s to an unrelated type Unable to open included file: definition or directive expected. expected a definition keyword (such as function) after attribute %s, not You are attempting to cast an object to a type to which it converted. This can happen if the class you are casting to is not in the inheritance chain of the object being cast. This error appears only when the compiler is running in strict mode. Check the syntax in the line. This error will occur if the author forgets to use the "var" or "function" keyword in a declaration. public int z;// should be 'public var z:int;' This error might also occur when the compiler encounters an unexpected character. For example, the following use of the trace() function is invalid, because of the missing parentheses (the correct syntax is trace("hello")): trace "hello" The correct statement syntax is default xml namespace = ns. Either the keyword xml (note the lowercase) expecting xml is missing or an incorrect keyword was used. For more information, see the default xml namespace directive. before namespace. expecting a catch or a finally clause. the 'each' keyword is not allowed without an 'in' operator. expecting left parenthesis before the identifier. The compiler expected a case statement at this point in the switch block. The following switch block incorrectly includes a call to print before the first case statement: 1077 Expecting CaseLabel. switch(x) { trace(2); case 0: trace(0); break 1078 Label must be a simple

7 7 of 18 9/6/2010 9:40 PM identifier. A super expression must have one operand. Expecting increment or decrement operator. Expecting a single expression within parentheses. %s is unexpected. The line of code is missing some information. In the following example, some expression (such as another number) needs to be included after the final plus sign: var sum:int = ; expecting %s before expecting semicolon before extra characters found after end of program Syntax error A string literal must be terminated before the line break. A string literal must be terminated before the line break. input ended before reaching the closing quotation The expression was unexpected at this point. If the error says "Expecting right brace before end of program," a block of code is missing a closing brace (). If the error says "Expecting left parenthesis before _," you may have omitted a parenthesis from a conditional expression, as shown in the following example, which is intentionally incorrect: var fact:int = 1 * 2 * 3; if fact > 2 { var bigger:boolean = true;

8 8 of 18 9/6/2010 9:40 PM mark for a string literal Syntax error XML does not have matching begin and end tags. Cannot delete super descendants. Duplicate namespace definition. Target of assignment must be a reference value. Operand of increment must be a reference. Increment operand is invalid. Decrement operand is invalid. Expecting an expression. Missing XML tag name. Possible infinite recursion due to this file include: Circular type reference was detected in The public attribute can You defined the namespace more than once. Delete or modify the duplicate definition. You can assign a value to a variable, but you cannot assign a value to another value. The operand must be a variable, an element in an array, or a property of an object. The operand must be a variable, an element in an array, or a property of an object. The operand must be a variable, an element in an array, or a property of an object. An expression is missing in a part of the code. For example, the following produces this error (there is a condition missing from the if statement: var x = (5 > 2)? trace(x) A file that is included in the source being compiled contains other include statements that would cause an infinite loop. For example, the following files. a.as and b.as, generate this error because each file tries to include the other. File a.as contains the following, which attempts to include the file b.as: import foo.bar.baz; include "b.as" trace(2); File b.as contains the following, which attempts to include the file a.as: include "a.as" A class is trying to extend a superclass. For example, class A cannot extend class B if B inherits from A: class a extends b { class b extends a {

9 9 of 18 9/6/2010 9:40 PM only be used inside a package. The internal attribute can only be used inside a package. A user-defined namespace attribute can only be used at the top level of a class definition. You are using a value that is not of the expected type and no implicit coercion exists to convert it to the expected type Implicit coercion of a value with static type %s to a possibly unrelated type Access of possibly undefined property %s through a reference with static type Access of undefined property A getter definition must have no parameters. A setter definition must have exactly one parameter. Perhaps you are using a supertype where a subtype is expected. For example: class A { var a:a = new A(); class B extends A { function f() var b : B = a // error The last statement generates an error because it attempts to assign an object of type A to a variable of type B. Similarly, the following defines the foo() function, which takes a parameter of type B. The statement foo(a); generates an error because it attempts to use a parameter of type A: function foo(x:b) { foo(a); Also, the following statement generates an error because the returned value for foo2() must be type B: function foo2():b { return new A(); You are attempting to access a property that does not exist for the specified object. For example, the following code generates this error because an int object does not have a property named assortment: var i:int = 44; var str:string = i.assortment; This error appears only when the compiler is running in strict mode. You are attempting to access an undefined variable. For example, if the variable huh has not been defined, a call to it generates this error: huh = 55; This error can appear only when the compiler is running in strict mode.

10 10 of 18 9/6/2010 9:40 PM A setter definition cannot have optional parameters. Return type of a getter definition must not be void. Methods defined in an interface must not have a body. Function does not have a body. Attribute %s was specified multiple times. Duplicate interface definition: A constructor cannot specify a return type. Classes must not be nested. The attribute final can only be used on a method defined in a class. The native attribute can only be used with function definitions. The dynamic attribute can only be used with class definitions. %s as not a valid type. Incorrect number of arguments. Expected A getter function simulates a variable. Because variables of type void, you cannot declare getter functions to return type void. You specified an attribute more than once in the same statement. For example, the statement public static public var x; generates this error because it specifies that the variable x is public twice. Delete duplicate declarations. Change or delete the duplicate definitions. The function expects a different number of arguments than those you provided. For example, the following defines function goo, which has two arguments: class A { static function goo(x:int,y:int) { return(x+y); The following statement would generate an error because it provides three arguments:

11 11 of 18 9/6/2010 9:40 PM Incorrect number of arguments. Expected no more than Required parameters are not permitted after optional parameters. Variable declarations are not permitted in interfaces. Parameters specified after the...rest parameter definition keyword can only be an Array data type. A class can only extend another class, not an interface. An interface can only extend other interfaces, but %s is a class. The override attribute can only be used on a method defined in a class. Interface method %s in namespace %s is implemented with an incompatible signature in class Native methods cannot have a A.goo(1,2,3); You are attempting to have the interface extend a class. An interface can only extend another interface. Method signatures must match exactly. You cannot use native because it is a reserved keyword.

12 12 of 18 9/6/2010 9:40 PM body. A constructor a getter or setter method. An AS source file was not specified. The return statement used in static initialization code. The protected attribute can only be used on class property definitions. A conflict exists with definition %s in namespace You cannot declare more than one variable with the same identifier name within the same scope unless all such variables are declared to be of the same type. In ActionScript 3.0, different code blocks (such as those used in two for loops in the same function definition) are considered to be in the same scope. The following code example correctly casts the variable x as the same type: function test() { var x:int = 3; for(var x:int = 33; x < 55; x++) trace(x); for(var x:int = 11; x < 33; x++) trace(x) The following code example generates an error because the type casting in the variable declaration and the for loops are different: function test() { var x:string = "The answer is"; for(var x:int = 33; x < 55; x++) // error trace(x); for(var x:unit = 11; x < 33; x++) // error trace(x) A conflict exists with inherited definition %s in namespace A constructor can only be declared public. Only one of public, private, protected, or internal can

13 13 of 18 9/6/2010 9:40 PM be specified on a definition. Accessors nested inside other functions. Interfaces instantiated with the new operator. Interface members declared public, private, protected, or internal. missing left brace ({) before the function body. The return statement used in package initialization code. The native attribute used in interface definitions. You cannot use native because it is a reserved keyword Method %s conflicts with definition inherited from interface Interface attribute %s is invalid. Namespace declarations are not permitted in interfaces. Class %s implements interface %s The class implements the same interface more than once. For example, the following generates this error because class C implements interface A twice:

14 14 of 18 9/6/2010 9:40 PM multiple times. interface A { public function f(); ; class C implements A,A { public function f() { trace("f"); The correct implementing statement should be class C implements A { Illegal assignment to function Namespace attributes are not permitted on interface methods. Function does not return a value. A namespace initializer must be either a literal string or another namespace. Definition %s could not be found. Label definition is invalid. Comparison between a value with static type %s and a You are attempting to redefine a function. For example, the following defines the function toplevel() to print the word "top". The second statement generates an error because it assigns a different return value to the function: function toplevel() { trace("top"); toplevel = function() { trace("replacement works in ~"); // error Every possible control flow in a function must return a value whenever the return type is something other than void. The following function f(x) does not generate an error because the if..else statement always returns a value: function f(x):int { if (x) return 2; else return 3; // no error However, the function g(x) below generates the error because the switch statement does not always return a value. function g(x:int):int { switch(x) { case 1: return 1; case 2: return 2: // return 2;//uncomment to remove the error This checking is enabled only when the function declares a return type other than void. This error is enabled in strict mode.

15 15 of 18 9/6/2010 9:40 PM possibly unrelated type The return statement used in global initialization code. Attempted access of inaccessible property %s through a reference with static type Call to a possibly undefined method Forward reference to base class Package used as a value: Incompatible default value of type %s where %s is expected. The switch has more than one default, but only one default is allowed. Illegal assignment to class Attempt to delete the fixed property Only dynamically defined properties can be deleted. Base class was not found or is not a compile-time This error appears only when the compiler is running in strict mode. Delete removes dynamically defined properties from an object. Declared properties of a class can not be deleted. This error appears only when the compiler is running in strict mode.

16 16 of 18 9/6/2010 9:40 PM constant. Interface was not found or is not a compile-time constant. The static attribute is not allowed on namespace definitions. Interface definitions must not be nested within class or other interface definitions. The prototype attribute is invalid. Attempted access of inaccessible method %s through a reference with static type expecting an expression after the throw. The class %s cannot extend %s since both are associated with library symbols or the main timeline. Attributes are not allowed on package definition. Internal error: invalid for-in initializer, only 1 expression expected. You are either calling a private method from another class, or calling a method defined in a namespace that is not in use. If you are calling a method defined in an unused namespace, add a use statement for the required namespace.

17 17 of 18 9/6/2010 9:40 PM A super statement cannot occur after a this, super, return, or throw statement. Access of undefined property %s in package No default constructor found in base class /* found without matching */. Syntax Error: expecting a left brace({)or string literal(""). A super statement can be used only as the last item in a constructor initializer list. The this keyword can not be used in property initializers. You are attempting to access an undefined variable in a package. For example, if the variable p.huh has not been defined, a call to it generates this error: p.huh = 55; This error can only appear when the compiler is running in strict mode. You must explicitly call the constructor of the base class with a super() statement if it has 1 or more required arguments. The characters '/*' where found, which indicate the beginning of a comment, but the corresponding characters, '*/', which indicate the end of the comment block, were not found. You cannot use the super statement within a constructor. You can use the super statement only as the last item in the constructor initializer list. You cannot use the this keyword within a property initializer. The initializer The initializer of a configuration value must be a value known at compile time. The initializer may be a for a constant string, number, or boolean, or a reference to another previously defined configuration value. configuration value must be a compile time constant. A configuration variable may only be declared const. A configuration value must be declared at the top level of a program or package. When defining a configuration variable, it must be declared as const. A configuration value must be declared at the top level of a program or package.

18 18 of 18 9/6/2010 9:40 PM Namespace %s conflicts with a configuration namespace. Precision must be an integer between 1 and 34. numeric use statement must be first in block. Incompatible Version: can not reference definition %s introduced in version %s from code with version A namespace may not have the same name as a configuration namespace. Current Page: 2009 Adobe Systems Incorporated. All rights reserved. Thu Apr , 01:08 AM -07:00 Comments (1) matteo sisti settejune 15, 2010 It's so annoying and frustratiing that so many messages here don't have a Description, many of which are not self-explanatory at all. For example 1008 "attribute is invalid", but this is just a random example. You need to sign in in order to post a comment.

This document defines the ActionScript 3.0 language, which is designed to be forward- compatible with the next edition of ECMAScript (ECMA-262).

This document defines the ActionScript 3.0 language, which is designed to be forward- compatible with the next edition of ECMAScript (ECMA-262). ActionScript 3.0 Language Specification This document defines the ActionScript 3.0 language, which is designed to be forward- compatible with the next edition of ECMAScript (ECMA-262). This document is

More information

Introduction to Programming Using Java (98-388)

Introduction to Programming Using Java (98-388) Introduction to Programming Using Java (98-388) Understand Java fundamentals Describe the use of main in a Java application Signature of main, why it is static; how to consume an instance of your own class;

More information

C++ Important Questions with Answers

C++ Important Questions with Answers 1. Name the operators that cannot be overloaded. sizeof,.,.*,.->, ::,? 2. What is inheritance? Inheritance is property such that a parent (or super) class passes the characteristics of itself to children

More information

Absolute C++ Walter Savitch

Absolute C++ Walter Savitch Absolute C++ sixth edition Walter Savitch Global edition This page intentionally left blank Absolute C++, Global Edition Cover Title Page Copyright Page Preface Acknowledgments Brief Contents Contents

More information

Chapter 5 Object-Oriented Programming

Chapter 5 Object-Oriented Programming Chapter 5 Object-Oriented Programming Develop code that implements tight encapsulation, loose coupling, and high cohesion Develop code that demonstrates the use of polymorphism Develop code that declares

More information

A Short Summary of Javali

A Short Summary of Javali A Short Summary of Javali October 15, 2015 1 Introduction Javali is a simple language based on ideas found in languages like C++ or Java. Its purpose is to serve as the source language for a simple compiler

More information

CS-202 Introduction to Object Oriented Programming

CS-202 Introduction to Object Oriented Programming CS-202 Introduction to Object Oriented Programming California State University, Los Angeles Computer Science Department Lecture III Inheritance and Polymorphism Introduction to Inheritance Introduction

More information

CS 321 Homework 4 due 1:30pm, Thursday, March 15, 2012 This homework specification is copyright by Andrew Tolmach. All rights reserved.

CS 321 Homework 4 due 1:30pm, Thursday, March 15, 2012 This homework specification is copyright by Andrew Tolmach. All rights reserved. CS 321 Homework 4 due 1:30pm, Thursday, March 15, 2012 This homework specification is copyright 2002-2012 by Andrew Tolmach. All rights reserved. Typechecking In this assignment, you will build a type-checker

More information

Java Object Oriented Design. CSC207 Fall 2014

Java Object Oriented Design. CSC207 Fall 2014 Java Object Oriented Design CSC207 Fall 2014 Design Problem Design an application where the user can draw different shapes Lines Circles Rectangles Just high level design, don t write any detailed code

More information

Argument Passing All primitive data types (int etc.) are passed by value and all reference types (arrays, strings, objects) are used through refs.

Argument Passing All primitive data types (int etc.) are passed by value and all reference types (arrays, strings, objects) are used through refs. Local Variable Initialization Unlike instance vars, local vars must be initialized before they can be used. Eg. void mymethod() { int foo = 42; int bar; bar = bar + 1; //compile error bar = 99; bar = bar

More information

Weiss Chapter 1 terminology (parenthesized numbers are page numbers)

Weiss Chapter 1 terminology (parenthesized numbers are page numbers) Weiss Chapter 1 terminology (parenthesized numbers are page numbers) assignment operators In Java, used to alter the value of a variable. These operators include =, +=, -=, *=, and /=. (9) autoincrement

More information

Practice for Chapter 11

Practice for Chapter 11 Practice for Chapter 11 MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question. 1) Object-oriented programming allows you to derive new classes from existing

More information

Chapter 2: Functions and Control Structures

Chapter 2: Functions and Control Structures Chapter 2: Functions and Control Structures TRUE/FALSE 1. A function definition contains the lines of code that make up a function. T PTS: 1 REF: 75 2. Functions are placed within parentheses that follow

More information

CS1622. Semantic Analysis. The Compiler So Far. Lecture 15 Semantic Analysis. How to build symbol tables How to use them to find

CS1622. Semantic Analysis. The Compiler So Far. Lecture 15 Semantic Analysis. How to build symbol tables How to use them to find CS1622 Lecture 15 Semantic Analysis CS 1622 Lecture 15 1 Semantic Analysis How to build symbol tables How to use them to find multiply-declared and undeclared variables. How to perform type checking CS

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

Contents. Figures. Tables. Examples. Foreword. Preface. 1 Basics of Java Programming 1. xix. xxi. xxiii. xxvii. xxix

Contents. Figures. Tables. Examples. Foreword. Preface. 1 Basics of Java Programming 1. xix. xxi. xxiii. xxvii. xxix PGJC4_JSE8_OCA.book Page ix Monday, June 20, 2016 2:31 PM Contents Figures Tables Examples Foreword Preface xix xxi xxiii xxvii xxix 1 Basics of Java Programming 1 1.1 Introduction 2 1.2 Classes 2 Declaring

More information

1 Lexical Considerations

1 Lexical Considerations Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science 6.035, Spring 2013 Handout Decaf Language Thursday, Feb 7 The project for the course is to write a compiler

More information

Declarations and Access Control SCJP tips

Declarations and Access Control  SCJP tips Declarations and Access Control www.techfaq360.com SCJP tips Write code that declares, constructs, and initializes arrays of any base type using any of the permitted forms both for declaration and for

More information

STRUCTURING OF PROGRAM

STRUCTURING OF PROGRAM Unit III MULTIPLE CHOICE QUESTIONS 1. Which of the following is the functionality of Data Abstraction? (a) Reduce Complexity (c) Parallelism Unit III 3.1 (b) Binds together code and data (d) None of the

More information

Hierarchical inheritance: Contains one base class and multiple derived classes of the same base class.

Hierarchical inheritance: Contains one base class and multiple derived classes of the same base class. 1. What is C#? C# (pronounced "C sharp") is a simple, modern, object oriented, and type safe programming language. It will immediately be familiar to C and C++ programmers. C# combines the high productivity

More information

Index COPYRIGHTED MATERIAL

Index COPYRIGHTED MATERIAL Index COPYRIGHTED MATERIAL Note to the Reader: Throughout this index boldfaced page numbers indicate primary discussions of a topic. Italicized page numbers indicate illustrations. A abstract classes

More information

Islamic University of Gaza Faculty of Engineering Computer Engineering Department

Islamic University of Gaza Faculty of Engineering Computer Engineering Department Student Mark Islamic University of Gaza Faculty of Engineering Computer Engineering Department Question # 1 / 18 Question # / 1 Total ( 0 ) Student Information ID Name Answer keys Sector A B C D E A B

More information

Lexical Considerations

Lexical Considerations Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science 6.035, Spring 2010 Handout Decaf Language Tuesday, Feb 2 The project for the course is to write a compiler

More information

Index. Index. More information. block statements 66 y 107 Boolean 107 break 55, 68 built-in types 107

Index. Index. More information. block statements 66 y 107 Boolean 107 break 55, 68 built-in types 107 A abbreviations 17 abstract class 105 abstract data types 105 abstract method 105 abstract types 105 abstraction 92, 105 access level 37 package 114 private 115 protected 115 public 115 accessors 24, 105

More information

Reference Grammar Meta-notation: hfooi means foo is a nonterminal. foo (in bold font) means that foo is a terminal i.e., a token or a part of a token.

Reference Grammar Meta-notation: hfooi means foo is a nonterminal. foo (in bold font) means that foo is a terminal i.e., a token or a part of a token. Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science 6.035, Fall 2002 Handout 7 Espresso Language Definition Wednesday, September 4 The project for the 18-unit

More information

Java Primer 1: Types, Classes and Operators

Java Primer 1: Types, Classes and Operators Java Primer 1 3/18/14 Presentation for use with the textbook Data Structures and Algorithms in Java, 6th edition, by M. T. Goodrich, R. Tamassia, and M. H. Goldwasser, Wiley, 2014 Java Primer 1: Types,

More information

AP COMPUTER SCIENCE JAVA CONCEPTS IV: RESERVED WORDS

AP COMPUTER SCIENCE JAVA CONCEPTS IV: RESERVED WORDS AP COMPUTER SCIENCE JAVA CONCEPTS IV: RESERVED WORDS PAUL L. BAILEY Abstract. This documents amalgamates various descriptions found on the internet, mostly from Oracle or Wikipedia. Very little of this

More information

Definition of DJ (Diminished Java)

Definition of DJ (Diminished Java) Definition of DJ (Diminished Java) version 0.5 Jay Ligatti 1 Introduction DJ is a small programming language similar to Java. DJ has been designed to try to satisfy two opposing goals: 1. DJ is a complete

More information

DEBUGGING TIPS. 1 Introduction COMPUTER SCIENCE 61A

DEBUGGING TIPS. 1 Introduction COMPUTER SCIENCE 61A DEBUGGING TIPS COMPUTER SCIENCE 61A 1 Introduction Every time a function is called, Python creates what is called a stack frame for that specific function to hold local variables and other information.

More information

Type Hierarchy. Lecture 6: OOP, autumn 2003

Type Hierarchy. Lecture 6: OOP, autumn 2003 Type Hierarchy Lecture 6: OOP, autumn 2003 The idea Many types have common behavior => type families share common behavior organized into a hierarchy Most common on the top - supertypes Most specific at

More information

by Pearson Education, Inc. All Rights Reserved.

by Pearson Education, Inc. All Rights Reserved. Let s improve the bubble sort program of Fig. 6.15 to use two functions bubblesort and swap. Function bubblesort sorts the array. It calls function swap (line 51) to exchange the array elements array[j]

More information

Pace University. Fundamental Concepts of CS121 1

Pace University. Fundamental Concepts of CS121 1 Pace University Fundamental Concepts of CS121 1 Dr. Lixin Tao http://csis.pace.edu/~lixin Computer Science Department Pace University October 12, 2005 This document complements my tutorial Introduction

More information

Types. Type checking. Why Do We Need Type Systems? Types and Operations. What is a type? Consensus

Types. Type checking. Why Do We Need Type Systems? Types and Operations. What is a type? Consensus Types Type checking What is a type? The notion varies from language to language Consensus A set of values A set of operations on those values Classes are one instantiation of the modern notion of type

More information

Lexical Considerations

Lexical Considerations Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science 6.035, Fall 2005 Handout 6 Decaf Language Wednesday, September 7 The project for the course is to write a

More information

FORM 1 (Please put your name and section number (001/10am or 002/2pm) on the scantron!!!!) CS 161 Exam II: True (A)/False(B) (2 pts each):

FORM 1 (Please put your name and section number (001/10am or 002/2pm) on the scantron!!!!) CS 161 Exam II: True (A)/False(B) (2 pts each): FORM 1 (Please put your name and section number (001/10am or 002/2pm) on the scantron!!!!) CS 161 Exam II: True (A)/False(B) (2 pts each): 1. If a function has default arguments, they can be located anywhere

More information

B.V. Patel Institute of Business Management, Computer & Information Technology, Uka Tarsadia University

B.V. Patel Institute of Business Management, Computer & Information Technology, Uka Tarsadia University Unit 1 Programming Language and Overview of C 1. State whether the following statements are true or false. a. Every line in a C program should end with a semicolon. b. In C language lowercase letters are

More information

Graphical Interface and Application (I3305) Semester: 1 Academic Year: 2017/2018 Dr Antoun Yaacoub

Graphical Interface and Application (I3305) Semester: 1 Academic Year: 2017/2018 Dr Antoun Yaacoub Lebanese University Faculty of Science Computer Science BS Degree Graphical Interface and Application (I3305) Semester: 1 Academic Year: 2017/2018 Dr Antoun Yaacoub 2 Crash Course in JAVA Classes A Java

More information

CH. 2 OBJECT-ORIENTED PROGRAMMING

CH. 2 OBJECT-ORIENTED PROGRAMMING CH. 2 OBJECT-ORIENTED PROGRAMMING ACKNOWLEDGEMENT: THESE SLIDES ARE ADAPTED FROM SLIDES PROVIDED WITH DATA STRUCTURES AND ALGORITHMS IN JAVA, GOODRICH, TAMASSIA AND GOLDWASSER (WILEY 2016) OBJECT-ORIENTED

More information

PART A : MULTIPLE CHOICE Circle the letter of the best answer (1 mark each)

PART A : MULTIPLE CHOICE Circle the letter of the best answer (1 mark each) PART A : MULTIPLE CHOICE Circle the letter of the best answer (1 mark each) 1. An example of a narrowing conversion is a) double to long b) long to integer c) float to long d) integer to long 2. The key

More information

The SPL Programming Language Reference Manual

The SPL Programming Language Reference Manual The SPL Programming Language Reference Manual Leonidas Fegaras University of Texas at Arlington Arlington, TX 76019 fegaras@cse.uta.edu February 27, 2018 1 Introduction The SPL language is a Small Programming

More information

The PCAT Programming Language Reference Manual

The PCAT Programming Language Reference Manual The PCAT Programming Language Reference Manual Andrew Tolmach and Jingke Li Dept. of Computer Science Portland State University September 27, 1995 (revised October 15, 2002) 1 Introduction The PCAT language

More information

3. Java - Language Constructs I

3. Java - Language Constructs I Educational Objectives 3. Java - Language Constructs I Names and Identifiers, Variables, Assignments, Constants, Datatypes, Operations, Evaluation of Expressions, Type Conversions You know the basic blocks

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

Rule 1-3: Use white space to break a function into paragraphs. Rule 1-5: Avoid very long statements. Use multiple shorter statements instead.

Rule 1-3: Use white space to break a function into paragraphs. Rule 1-5: Avoid very long statements. Use multiple shorter statements instead. Chapter 9: Rules Chapter 1:Style and Program Organization Rule 1-1: Organize programs for readability, just as you would expect an author to organize a book. Rule 1-2: Divide each module up into a public

More information

SPARK-PL: Introduction

SPARK-PL: Introduction Alexey Solovyev Abstract All basic elements of SPARK-PL are introduced. Table of Contents 1. Introduction to SPARK-PL... 1 2. Alphabet of SPARK-PL... 3 3. Types and variables... 3 4. SPARK-PL basic commands...

More information

UIL Diagnostic Messages

UIL Diagnostic Messages UIL Diagnostic Messages This appendix lists the diagnostic messages produced by the UIL compiler. The severity, a description of the message, and a suggestion for correcting the problem are listed for

More information

DOWNLOAD PDF CORE JAVA APTITUDE QUESTIONS AND ANSWERS

DOWNLOAD PDF CORE JAVA APTITUDE QUESTIONS AND ANSWERS Chapter 1 : Chapter-wise Java Multiple Choice Questions and Answers Interview MCQs Java Programming questions and answers with explanation for interview, competitive examination and entrance test. Fully

More information

Table of Contents Preface Bare Necessities... 17

Table of Contents Preface Bare Necessities... 17 Table of Contents Preface... 13 What this book is about?... 13 Who is this book for?... 14 What to read next?... 14 Personages... 14 Style conventions... 15 More information... 15 Bare Necessities... 17

More information

Control Flow. COMS W1007 Introduction to Computer Science. Christopher Conway 3 June 2003

Control Flow. COMS W1007 Introduction to Computer Science. Christopher Conway 3 June 2003 Control Flow COMS W1007 Introduction to Computer Science Christopher Conway 3 June 2003 Overflow from Last Time: Why Types? Assembly code is typeless. You can take any 32 bits in memory, say this is an

More information

CSC Web Programming. Introduction to JavaScript

CSC Web Programming. Introduction to JavaScript CSC 242 - Web Programming Introduction to JavaScript JavaScript JavaScript is a client-side scripting language the code is executed by the web browser JavaScript is an embedded language it relies on its

More information

Problem Solving with C++

Problem Solving with C++ GLOBAL EDITION Problem Solving with C++ NINTH EDITION Walter Savitch Kendrick Mock Ninth Edition PROBLEM SOLVING with C++ Problem Solving with C++, Global Edition Cover Title Copyright Contents Chapter

More information

Chapter 6 Introduction to Defining Classes

Chapter 6 Introduction to Defining Classes Introduction to Defining Classes Fundamentals of Java: AP Computer Science Essentials, 4th Edition 1 Objectives Design and implement a simple class from user requirements. Organize a program in terms of

More information

Lecture 18 Tao Wang 1

Lecture 18 Tao Wang 1 Lecture 18 Tao Wang 1 Abstract Data Types in C++ (Classes) A procedural program consists of one or more algorithms that have been written in computerreadable language Input and display of program output

More information

JewelScript Reference Manual

JewelScript Reference Manual JewelScript Reference Manual Version 1.2, June 2014 www.jewe.org JewelScript Reference Manual 1 TOC Table of Contents TOC Language Documentation...5 Lexical structure...6 Identifiers...6 Keywords...6 Operators...6

More information

Programming II (CS300)

Programming II (CS300) 1 Programming II (CS300) Chapter 05: Inheritance and Interfaces MOUNA KACEM mouna@cs.wisc.edu Fall 2018 Inheritance and Interfaces 2 Introduction Inheritance and Class Hierarchy Polymorphism Abstract Classes

More information

UNIT 3 ARRAYS, RECURSION, AND COMPLEXITY CHAPTER 11 CLASSES CONTINUED

UNIT 3 ARRAYS, RECURSION, AND COMPLEXITY CHAPTER 11 CLASSES CONTINUED UNIT 3 ARRAYS, RECURSION, AND COMPLEXITY CHAPTER 11 CLASSES CONTINUED EXERCISE 11.1 1. static public final int DEFAULT_NUM_SCORES = 3; 2. Java allocates a separate set of memory cells in each instance

More information

Basic Object-Oriented Concepts. 5-Oct-17

Basic Object-Oriented Concepts. 5-Oct-17 Basic Object-Oriented Concepts 5-Oct-17 Concept: An object has behaviors In old style programming, you had: data, which was completely passive functions, which could manipulate any data An object contains

More information

1 Shyam sir JAVA Notes

1 Shyam sir JAVA Notes 1 Shyam sir JAVA Notes 1. What is the most important feature of Java? Java is a platform independent language. 2. What do you mean by platform independence? Platform independence means that we can write

More information

Object Oriented Programming is a programming method that combines: Advantage of Object Oriented Programming

Object Oriented Programming is a programming method that combines: Advantage of Object Oriented Programming Overview of OOP Object Oriented Programming is a programming method that combines: a) Data b) Instructions for processing that data into a self-sufficient object that can be used within a program or in

More information

STUDY NOTES UNIT 1 - INTRODUCTION TO OBJECT ORIENTED PROGRAMMING

STUDY NOTES UNIT 1 - INTRODUCTION TO OBJECT ORIENTED PROGRAMMING OBJECT ORIENTED PROGRAMMING STUDY NOTES UNIT 1 - INTRODUCTION TO OBJECT ORIENTED PROGRAMMING 1. Object Oriented Programming Paradigms 2. Comparison of Programming Paradigms 3. Basic Object Oriented Programming

More information

Exercise 6 Multiple Inheritance, Multiple Dispatch and Linearization November 4, 2016

Exercise 6 Multiple Inheritance, Multiple Dispatch and Linearization November 4, 2016 Concepts of Object-Oriented Programming AS 2016 Exercise 6 Multiple Inheritance, Multiple Dispatch and Linearization November 4, 2016 Task 1 Consider the following C++ program: class X X(int p) : fx(p)

More information

Introduction to Computers and C++ Programming p. 1 Computer Systems p. 2 Hardware p. 2 Software p. 7 High-Level Languages p. 8 Compilers p.

Introduction to Computers and C++ Programming p. 1 Computer Systems p. 2 Hardware p. 2 Software p. 7 High-Level Languages p. 8 Compilers p. Introduction to Computers and C++ Programming p. 1 Computer Systems p. 2 Hardware p. 2 Software p. 7 High-Level Languages p. 8 Compilers p. 9 Self-Test Exercises p. 11 History Note p. 12 Programming and

More information

COMP 401 Spring 2014 Midterm 1

COMP 401 Spring 2014 Midterm 1 COMP 401 Spring 2014 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

Rules and syntax for inheritance. The boring stuff

Rules and syntax for inheritance. The boring stuff Rules and syntax for inheritance The boring stuff The compiler adds a call to super() Unless you explicitly call the constructor of the superclass, using super(), the compiler will add such a call for

More information

Class 15. Object-Oriented Development from Structs to Classes. Laura Marik Spring 2012 C++ Course Notes (Provided by Jason Minski)

Class 15. Object-Oriented Development from Structs to Classes. Laura Marik Spring 2012 C++ Course Notes (Provided by Jason Minski) Class 15 Object-Oriented Development from Structs to Classes The difference between structs and classes A class in C++ is basically the same thing as a struct The following are exactly equivalent struct

More information

Topics Covered Thus Far. CMSC 330: Organization of Programming Languages. Language Features Covered Thus Far. Programming Languages Revisited

Topics Covered Thus Far. CMSC 330: Organization of Programming Languages. Language Features Covered Thus Far. Programming Languages Revisited CMSC 330: Organization of Programming Languages Type Systems, Names & Binding Topics Covered Thus Far Programming languages Syntax specification Regular expressions Context free grammars Implementation

More information

NAMESPACES IN C++ You can refer the Programming with ANSI C++ by Bhushan Trivedi for Understanding Namespaces Better(Chapter 14)

NAMESPACES IN C++ You can refer the Programming with ANSI C++ by Bhushan Trivedi for Understanding Namespaces Better(Chapter 14) NAMESPACES IN C++ You can refer the Programming with ANSI C++ by Bhushan Trivedi for Understanding Namespaces Better(Chapter 14) Some Material for your reference: Consider following C++ program. // A program

More information

Fundamental Concepts and Definitions

Fundamental Concepts and Definitions Fundamental Concepts and Definitions Identifier / Symbol / Name These terms are synonymous: they refer to the name given to a programming component. Classes, variables, functions, and methods are the most

More information

Java Fundamentals p. 1 The Origins of Java p. 2 How Java Relates to C and C++ p. 3 How Java Relates to C# p. 4 Java's Contribution to the Internet p.

Java Fundamentals p. 1 The Origins of Java p. 2 How Java Relates to C and C++ p. 3 How Java Relates to C# p. 4 Java's Contribution to the Internet p. Preface p. xix Java Fundamentals p. 1 The Origins of Java p. 2 How Java Relates to C and C++ p. 3 How Java Relates to C# p. 4 Java's Contribution to the Internet p. 5 Java Applets and Applications p. 5

More information

BIT Java Programming. Sem 1 Session 2011/12. Chapter 2 JAVA. basic

BIT Java Programming. Sem 1 Session 2011/12. Chapter 2 JAVA. basic BIT 3383 Java Programming Sem 1 Session 2011/12 Chapter 2 JAVA basic Objective: After this lesson, you should be able to: declare, initialize and use variables according to Java programming language guidelines

More information

Programming Exercise 14: Inheritance and Polymorphism

Programming Exercise 14: Inheritance and Polymorphism Programming Exercise 14: Inheritance and Polymorphism Purpose: Gain experience in extending a base class and overriding some of its methods. Background readings from textbook: Liang, Sections 11.1-11.5.

More information

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

Overview. Elements of Programming Languages. Objects. Self-Reference

Overview. Elements of Programming Languages. Objects. Self-Reference Overview Elements of Programming Languages Lecture 10: James Cheney University of Edinburgh October 23, 2017 Last time: programming in the large Programs, packages/namespaces, importing Modules and interfaces

More information

Week 6: Review. Java is Case Sensitive

Week 6: Review. Java is Case Sensitive Week 6: Review Java Language Elements: special characters, reserved keywords, variables, operators & expressions, syntax, objects, scoping, Robot world 7 will be used on the midterm. Java is Case Sensitive

More information

CS201 Some Important Definitions

CS201 Some Important Definitions CS201 Some Important Definitions For Viva Preparation 1. What is a program? A program is a precise sequence of steps to solve a particular problem. 2. What is a class? We write a C++ program using data

More information

UNIVERSITY OF CALIFORNIA Department of Electrical Engineering and Computer Sciences Computer Science Division. P. N. Hilfinger

UNIVERSITY OF CALIFORNIA Department of Electrical Engineering and Computer Sciences Computer Science Division. P. N. Hilfinger UNIVERSITY OF CALIFORNIA Department of Electrical Engineering and Computer Sciences Computer Science Division CS 164 Spring 2005 P. N. Hilfinger Project #2: Static Analyzer for Pyth Due: Wednesday, 6 April

More information

CMSC 330: Organization of Programming Languages

CMSC 330: Organization of Programming Languages CMSC 330: Organization of Programming Languages Type Systems, Names and Binding CMSC 330 - Spring 2013 1 Topics Covered Thus Far! Programming languages Ruby OCaml! Syntax specification Regular expressions

More information

INSTRUCTIONS TO CANDIDATES

INSTRUCTIONS TO CANDIDATES NATIONAL UNIVERSITY OF SINGAPORE SCHOOL OF COMPUTING MIDTERM ASSESSMENT FOR Semester 2 AY2017/2018 CS2030 Programming Methodology II March 2018 Time Allowed 90 Minutes INSTRUCTIONS TO CANDIDATES 1. This

More information

COP 3330 Final Exam Review

COP 3330 Final Exam Review COP 3330 Final Exam Review I. The Basics (Chapters 2, 5, 6) a. comments b. identifiers, reserved words c. white space d. compilers vs. interpreters e. syntax, semantics f. errors i. syntax ii. run-time

More information

SOFT 161. Class Meeting 1.6

SOFT 161. Class Meeting 1.6 University of Nebraska Lincoln Class Meeting 1.6 Slide 1/13 Overview of A general purpose programming language Created by Guido van Rossum Overarching design goal was orthogonality Automatic memory management

More information

Object Oriented Programming

Object Oriented Programming Object Oriented Programming Objects self-contained working units encapsulate data and operations exist independantly of each other (functionally, they may depend) cooperate and communicate to perform a

More information

MARKING KEY The University of British Columbia MARKING KEY Computer Science 260 Midterm #1 Examination 12:30 noon, Tuesday, February 14, 2012

MARKING KEY The University of British Columbia MARKING KEY Computer Science 260 Midterm #1 Examination 12:30 noon, Tuesday, February 14, 2012 MARKING KEY The University of British Columbia MARKING KEY Computer Science 260 Midterm #1 Examination 12:30 noon, Tuesday, February 14, 2012 Instructor: K. S. Booth Time: 70 minutes (one hour ten minutes)

More information

Visual C# Instructor s Manual Table of Contents

Visual C# Instructor s Manual Table of Contents Visual C# 2005 2-1 Chapter 2 Using Data At a Glance Instructor s Manual Table of Contents Overview Objectives s Quick Quizzes Class Discussion Topics Additional Projects Additional Resources Key Terms

More information

Computer Science & Information Technology (CS) Rank under AIR 100. Examination Oriented Theory, Practice Set Key concepts, Analysis & Summary

Computer Science & Information Technology (CS) Rank under AIR 100. Examination Oriented Theory, Practice Set Key concepts, Analysis & Summary GATE- 2016-17 Postal Correspondence 1 C-Programming Computer Science & Information Technology (CS) 20 Rank under AIR 100 Postal Correspondence Examination Oriented Theory, Practice Set Key concepts, Analysis

More information

FORM 2 (Please put your name and form # on the scantron!!!!)

FORM 2 (Please put your name and form # on the scantron!!!!) CS 161 Exam 2: FORM 2 (Please put your name and form # on the scantron!!!!) True (A)/False(B) (2 pts each): 1. Recursive algorithms tend to be less efficient than iterative algorithms. 2. A recursive function

More information

C-LANGUAGE CURRICULAM

C-LANGUAGE CURRICULAM C-LANGUAGE CURRICULAM Duration: 2 Months. 1. Introducing C 1.1 History of C Origin Standardization C-Based Languages 1.2 Strengths and Weaknesses Of C Strengths Weaknesses Effective Use of C 2. C Fundamentals

More information

Accelerating Information Technology Innovation

Accelerating Information Technology Innovation Accelerating Information Technology Innovation http://aiti.mit.edu Cali, Colombia Summer 2012 Lesson 02 Variables and Operators Agenda Variables Types Naming Assignment Data Types Type casting Operators

More information

Exercise 6 Multiple Inheritance, Multiple Dispatch and Linearization November 3, 2017

Exercise 6 Multiple Inheritance, Multiple Dispatch and Linearization November 3, 2017 Concepts of Object-Oriented Programming AS 2017 Exercise 6 Multiple Inheritance, Multiple Dispatch and Linearization November 3, 2017 Task 1 (from a previous exam) Consider the following C++ program: class

More information

Language Reference Manual simplicity

Language Reference Manual simplicity Language Reference Manual simplicity Course: COMS S4115 Professor: Dr. Stephen Edwards TA: Graham Gobieski Date: July 20, 2016 Group members Rui Gu rg2970 Adam Hadar anh2130 Zachary Moffitt znm2104 Suzanna

More information

What are the characteristics of Object Oriented programming language?

What are the characteristics of Object Oriented programming language? What are the various elements of OOP? Following are the various elements of OOP:- Class:- A class is a collection of data and the various operations that can be performed on that data. Object- This is

More information

Lecture 2: Variables and Operators. AITI Nigeria Summer 2012 University of Lagos.

Lecture 2: Variables and Operators. AITI Nigeria Summer 2012 University of Lagos. Lecture 2: Variables and Operators AITI Nigeria Summer 2012 University of Lagos. Agenda Variables Types Naming Assignment Data Types Type casting Operators Declaring Variables in Java type name; Variables

More information

public class Foo { private int var; public int Method1() { // var accessible anywhere here } public int MethodN() {

public class Foo { private int var; public int Method1() { // var accessible anywhere here } public int MethodN() { Scoping, Static Variables, Overloading, Packages In this lecture, we will examine in more detail the notion of scope for variables. We ve already indicated that variables only exist within the block they

More information

The Compiler So Far. CSC 4181 Compiler Construction. Semantic Analysis. Beyond Syntax. Goals of a Semantic Analyzer.

The Compiler So Far. CSC 4181 Compiler Construction. Semantic Analysis. Beyond Syntax. Goals of a Semantic Analyzer. The Compiler So Far CSC 4181 Compiler Construction Scanner - Lexical analysis Detects inputs with illegal tokens e.g.: main 5 (); Parser - Syntactic analysis Detects inputs with ill-formed parse trees

More information

CHIL CSS HTML Integrated Language

CHIL CSS HTML Integrated Language CHIL CSS HTML Integrated Language Programming Languages and Translators Fall 2013 Authors: Gil Chen Zion gc2466 Ami Kumar ak3284 Annania Melaku amm2324 Isaac White iaw2105 Professor: Prof. Stephen A. Edwards

More information

Java: introduction to object-oriented features

Java: introduction to object-oriented features Chair of Software Engineering Carlo A. Furia, Marco Piccioni, Bertrand Meyer Java: introduction to object-oriented features Chair of Software Engineering Carlo A. Furia, Marco Piccioni, Bertrand Meyer

More information

Review: Object Diagrams for Inheritance. Type Conformance. Inheritance Structures. Car. Vehicle. Truck. Vehicle. conforms to Object

Review: Object Diagrams for Inheritance. Type Conformance. Inheritance Structures. Car. Vehicle. Truck. Vehicle. conforms to Object Review: Diagrams for Inheritance - String makemodel - int mileage + (String, int) Class #3: Inheritance & Polymorphism Software Design II (CS 220): M. Allen, 25 Jan. 18 + (String, int) + void

More information

CMSC 132: Object-Oriented Programming II

CMSC 132: Object-Oriented Programming II CMSC 132: Object-Oriented Programming II Java Support for OOP Department of Computer Science University of Maryland, College Park Object Oriented Programming (OOP) OO Principles Abstraction Encapsulation

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

String Computation Program

String Computation Program String Computation Program Reference Manual Scott Pender scp2135@columbia.edu COMS4115 Fall 2012 10/31/2012 1 Lexical Conventions There are four kinds of tokens: identifiers, keywords, expression operators,

More information

Introduction to C Programming

Introduction to C Programming 1 2 Introduction to C Programming 2.6 Decision Making: Equality and Relational Operators 2 Executable statements Perform actions (calculations, input/output of data) Perform decisions - May want to print

More information