CMPE 152 Compiler Design Section 4 (Seminar) Section 5 (Lab) Spring 2017

Size: px
Start display at page:

Download "CMPE 152 Compiler Design Section 4 (Seminar) Section 5 (Lab) Spring 2017"

Transcription

1 San José State University Department of Computer Engineering CMPE 152 Compiler Design Section 4 (Seminar) Section 5 (Lab) Spring 2017 GREEN SHEET CMPE (seminar) TuTh 10:30 11:20 AM ENG 303 CMPE (lab) Tu 1:30 4:20 PM ENG 405 Instructor: Ron Mak Office hours: Th: 2:30 4:30 PM Office location: ENG ron.mak@sjsu.edu Instructor web page: Class web page: Course description Principles of lexical analysis, finite state automata and parsing; issues of variable declarations, variable types, control statements, function calls, nested scopes and efficient assembler target code. Prerequisite: CMPE 126, CMPE 102 (both with grade of C- or better). Misc/Lab: Lecture 2 hours/lab 3 hours. 3 units Please submit into Canvas a copy of your transcript with the prerequisite courses highlighted. Students who do not provide documentation of having satisfied the class prerequisite and co-requisite requirements (if any) by the second class meeting will be dropped from the class. Goals of the course 1. Compiler construction. Design and build a working compiler for a programming language that you invented. Write sample programs in your language, compile your programs into byte code for the Java Virtual Machine to produce.class files, and then successfully run your programs on the JVM. 2. Software engineering. Employ the best practices of object-oriented design and team-based software engineering. A compiler is a large, complex program! Managing the development of such a program requires learning skills that are highly desired by employers. CMPE and -05: Compiler Design Ron Mak 1

2 You will have the unique opportunity to invent a programming language, define its grammar, create a compiler for it, and then successfully compile and run programs written in your new language. Course learning outcomes Upon successful completion of the course, students will be able to Understand some of the underlying theory of compiler technology. Develop a scanner and a parser for a procedure-oriented programming language. Produce a symbol table and intermediate code (parse trees). Perform semantic analysis such as type checking. Develop an interpreter that creates a suitable runtime environment and executes the source program from the intermediate code and the symbol table. Invent a new programming language and define a grammar for it. Use the JavaCC compiler-compiler to generate a compiler for the team s language. Compile programs into the assembly language of the Java Virtual Machine (JVM). Assemble the assembly code into byte code for the JVM (create.class files). Successfully run programs written in the team s programming language on the JVM. Learn critical job skills that employers look for in new college hires! o Work together in a small programming team. Students form teams of four students each. Each student must be part of a team. o Understand and modify a Big Hairy Legacy Application (a Pascal interpreter written in Java). o Practice good object-oriented design and apply modern software engineering tools and practices to successfully develop a large complex application (your team's compiler project). This is a challenging course that will demand much of your time and effort throughout the semester. Course websites Course materials such as syllabus, handouts, notes, assignment instructions, etc. can be found on the class web page at and on the Canvas Learning Management System course website at Piazza at provides broadcast messages and a class forum. You are responsible for registering with these sites and regularly checking them for updates. CMPE and -05: Compiler Design Ron Mak 2

3 Required texts Publisher: ISBN: Source files: Publisher: ISBN: PDF or book: Writing Compilers and Interpreters, 3 rd edition Ronald Mak Wiley Publishers, Inc Generating Parsers with JavaCC, 2 nd edition Tom Copeland Centennial Books Recommended texts Publisher: ISBN: PDF: Programming for the Java Virtual Machine Joshua Engel Addison-Wesley Professional Understanding and Writing Compilers (free download) Richard Bornat Online Pascal tutorials Pascal Tutorial looks very good. It has an online Pascal compiler. Learn Pascal also looks good, although it doesn't appear to cover set types. There may be additional reading assignments and the use of tools from the Internet.This class will progress rapidly, and you must work hard to keep up. Do not fall behind in the reading. Compiler project teams You will form project teams of four students each. Team membership is mandatory for this class. Choose your teams wisely! Once teams are formed, students may not move from one team to another. All the members of a project team will each receive the same score for each team assignment. At the end of the semester, all members of a project team will receive the same score for its compiler project. The project grade will be determined by the overall quality of the final version of the team s artifacts and by how well the team achieved its goals to create a successful compiler. CMPE and -05: Compiler Design Ron Mak 3

4 Labs, assignments, and compiler projects Lab assignments during the first half of the semester will be to Learn the Pascal language. Experiment with the underlying theory of compiler technology. Modify, debug, and add features to the source code of a Pascal interpreter written in Java. Lab assignments during the second half of the semester will be to Define a grammar for your team s programming language. Implement the grammar in JavaCC. Generate a compiler for your language. Compile programs into the assembly language of the JVM. There will be individual and team assignments. Each assignment will be worth a specified maximum number of points, depending on difficulty. You will have at least one week to complete each assignment. Late assignments will lose 20% of the maximum points and an additional 20% for each 24 hours after the due date. Most of the lab assignments will help you to design and develop your compiler. Each team should be working on its compiler project in the background outside of the labs, although the labs can be ideal times to discuss and find solutions to problems. The following applies to individual assignments: You may study together and discuss the assignments, but what you turn in must be your individual work. Assignment submissions will be checked for plagiarism using Moss ( Copying another student s program or sharing your program is a violation of academic integrity. Moss is not fooled by renaming variables, reformatting source code, or re-ordering functions. Violators of academic integrity will suffer severe sanctions, including academic probation. Students who are on academic probation are not eligible for work as instructional assistants in the university or for internships at local companies. Postmortem report At the end of the semester, each student must also turn in a short (1 or 2 pages) individual postmortem report that includes: A brief description of what you learned in the course. An assessment of your accomplishments for your project team on the assignments and the web application project. An assessment of each of your other project team members. Only the instructor will see these reports. CMPE and -05: Compiler Design Ron Mak 4

5 Exams The midterm and final examinations will be closed book. Instant messaging, s, texting, tweeting, file sharing, or any other forms of communication with anyone else during the exams will be strictly forbidden. There can be no make-up midterm examination unless there is a documented medical emergency. Make-up final examinations are available only under conditions dictated by University regulations. Class grade Your individual final class grade will be weighted as follows: 30% Assignments 35% Compiler project 15% Midterm exam 20% Final exam During the semester, you can keep track of your progress in Canvas. Each assignment and exam will be scored (given points) but not assigned a letter grade. The average score can be seen in Canvas after each assignment and the midterm exam. At the end of the semester, all the students will be ranked in the order of their weighted class scores. Students with the median score will be assigned the B grade. Higher and lower grades will then be assigned based on how the scores cluster above and below the median. Your final class grade can be adjusted up or down depending on your level and quality of participation on your project team as determined by project tracking tools and your team members' assessments of your performance. Note that All students have the right, within a reasonable time, to know their academic scores, to review their grade-dependent work, and to be provided with explanations for the determination of their course grades. See University Policy F13-1 at for more details. Classroom protocol It is very important for each student to attend classes and labs and to participate. Cell phones in silent mode, please. University policies Per University Policy S16-9, university-wide policy information relevant to all courses, such as academic integrity, accommodations, etc. will be available on Office of Graduate and Undergraduate Programs Syllabus Information web page at CMPE and -05: Compiler Design Ron Mak 5

6 Schedule Subject to change with fair notice. Chapter readings are from the required texts. Week Dates Topics and activities WCI JavaCC 1 Jan 26 Overview of the course 1, 2 What are compilers and interpreters? A software framework for compilers and interpreters Form programming teams 2 Jan 31 Feb 2 Syntax diagrams Scanning (lexical analysis) 3, 4 Jan 31 lab Symbol table management Install software Write, compile, and run a Pascal program 3 Feb 7, 9 Top-down recursive-descent parsing Parsing assignment statements and expressions Intermediate code (parse trees) Feb 7 lab JFLAP exercises on finite automata and grammars Create a scanner and a symbol table 4 Feb 14, 16 Interpreting assignment statements and expressions Parsing control statements Parser error handling Feb 14 lab More exercises on finite automata and grammars Modify the Pascal parser for set expressions 5 Feb 21, 23 Interpreting control statements Runtime error handling Parsing declarations Feb 21 lab Execute Pascal set expressions 6 Feb 28 Mar 2 Parsing declarations, cont'd Semantic actions and type checking Feb 28 lab Parse set and complex type definitions 7 Mar 7, 9 Scope and the symbol table stack Parsing programs, procedures, and functions Parsing procedure and function calls Runtime memory management The runtime stack and activation frames Mar 7 lab Type check set and complex expressions Create a runtime library for complex arithmetic 8 Mar 14, 16 Passing parameters by value and by reference Interpreting Pascal programs Midcourse review 5 6, 7 8, 9 9, 10 11, Mar 14 lab Midterm exam Thursday, March 16 Compile and interpret Pascal programs Debug the interpreter CMPE and -05: Compiler Design Ron Mak 6

7 9 Mar 21, 23 A simple DFA scanner BNF grammars for programming languages The JavaCC compiler-compiler Mar 21 lab Create a grammar for your programming language 1 SPRING BREAK 10 Apr 4, 6 Generating a scanner with JavaCC Generating a parser with JavaCC JJTrees Apr 4 lab Use JavaCC to generate a scanner for your programming language 11 Apr 11, 13 JavaCC error handling The Java Virtual Machine (JVM) architecture Jasmin assembly language Code templates and code generation Apr 11 lab Use JavaCC to generate a parser for your programming language 12 Apr 18, 20 Code for expressions Code for assignment statements Apr 18 lab The Java Virtual Machine (JVM) architecture Learn the Jasmin assembly language 13 Apr 25, 27 Code for procedure and function calls Code to pass parameters by value and by reference Code for string operations Apr 25 lab Generate Jasmin assembly code for expressions, assignment statements, and function calls 14 May 2, 4 Code for control statements Code for arrays Code for records May 2 lab Generate Jasmin assembly code for control statements 15 May 9, 11 Executing compiled Pascal programs Bottom-up parsing Yacc and Lex Code optimization May 9 lab Generate Jasmin assembly code for arrays and records 16 May 16 Compiling object-oriented languages An interactive source-level debugger A multi-threaded GUI-based debugger Heap, stack, and garbage collection Course review May 16 lab Complete your compiler Exercises on Yacc and Lex May 17 Final projects due Wednesday, May 17 Final May 22 Final exam Monday, May 22 9:45 AM noon, ENG 303 2, 3, CMPE and -05: Compiler Design Ron Mak 7

The University of Akron Department of Mathematics. 3450:145-803 COLLEGE ALGEBRA 4 credits Spring 2015

The University of Akron Department of Mathematics. 3450:145-803 COLLEGE ALGEBRA 4 credits Spring 2015 The University of Akron Department of Mathematics 3450:145-803 COLLEGE ALGEBRA 4 credits Spring 2015 Instructor: Jonathan Hafner Email: jhafner@zips.uakron.edu Office: CAS 249 Phone: (330) 972 6158 Office

More information

CS 261 C and Assembly Language Programming. Course Syllabus

CS 261 C and Assembly Language Programming. Course Syllabus CS 261 C and Assembly Language Programming Course Syllabus Spring 2016 Lecture: Tuesdays and Thursdays 9:10AM to 10:25 in VSCI 255 3 Semester Hours Instructor: Dick Lang, Ph.D. dick_lang@vancouver.wsu.edu

More information

2010-2011 Assessment for Master s Degree Program Fall 2010 - Spring 2011 Computer Science Dept. Texas A&M University - Commerce

2010-2011 Assessment for Master s Degree Program Fall 2010 - Spring 2011 Computer Science Dept. Texas A&M University - Commerce 2010-2011 Assessment for Master s Degree Program Fall 2010 - Spring 2011 Computer Science Dept. Texas A&M University - Commerce Program Objective #1 (PO1):Students will be able to demonstrate a broad knowledge

More information

FI 630 Financial Management I

FI 630 Financial Management I Course Syllabus FI 630 Financial Management I Course Information Course: Financial Management I FI 630 Term: MBA winter, 2016 Credit Hours: 3 Prerequisite: AC 501, EC 501, EC 540 or equivalents. Recommended

More information

n Introduction n Art of programming language design n Programming language spectrum n Why study programming languages? n Overview of compilation

n Introduction n Art of programming language design n Programming language spectrum n Why study programming languages? n Overview of compilation Lecture Outline Programming Languages CSCI-4430 & CSCI-6430, Spring 2016 www.cs.rpi.edu/~milanova/csci4430/ Ana Milanova Lally Hall 314, 518 276-6887 milanova@cs.rpi.edu Office hours: Wednesdays Noon-2pm

More information

Introduction to Programming System Design. CSCI 455x (4 Units)

Introduction to Programming System Design. CSCI 455x (4 Units) Introduction to Programming System Design CSCI 455x (4 Units) Description This course covers programming in Java and C++. Topics include review of basic programming concepts such as control structures,

More information

CS 301 Course Information

CS 301 Course Information CS 301: Languages and Automata January 9, 2009 CS 301 Course Information Prof. Robert H. Sloan Handout 1 Lecture: Tuesday Thursday, 2:00 3:15, LC A5 Weekly Problem Session: Wednesday, 4:00 4:50 p.m., LC

More information

CSC 281 Automata and Algorithms Spring 2009

CSC 281 Automata and Algorithms Spring 2009 CSC 281 Automata and Algorithms Spring 2009 Instructor/Guide: Dr. Jeffrey J. McConnell mcconnel@canisius.edu cs.canisius.edu/~mcconnel WTC 207A 888-2434 (Secretary: 2430) Office Hours: MR 1:00 pm 4:00

More information

Drop Policy: A course drop grade will be assigned in accord with UTA policy (see current catalog).

Drop Policy: A course drop grade will be assigned in accord with UTA policy (see current catalog). Course: Psychology 1315 Spring 2011, Section 004 Meeting place and time: Instructor: Office & Telephone: Office Hours: Email: Department website: Life Sciences Bldg Room 122; Tu & Th 9:30AM 10:50AM Linda

More information

Syllabus Introduction to C++ Programming and Numerical Analysis Spring 2016

Syllabus Introduction to C++ Programming and Numerical Analysis Spring 2016 Syllabus Introduction to C++ Programming and Numerical Analysis Spring 2016 lead instructor: office: web: class time: Professor Johan Walden F655 walden@haas.berkeley.edu http://www.haas.berkeley.edu/faculty/walden.html

More information

IT 106 Introduction to IT Problem Solving Using Computer Programming revised 01.09.2013

IT 106 Introduction to IT Problem Solving Using Computer Programming revised 01.09.2013 Applied Information Technology Department Course Syllabus IT 106 Introduction to IT Problem Solving Using Computer Programming revised 01.09.2013 Catalog Description Introduces use of procedural programming

More information

Business Ethics (BUS 105) Cycle II, Spring, 2012 Semester

Business Ethics (BUS 105) Cycle II, Spring, 2012 Semester Business Ethics (BUS 105) Cycle II, Spring, 2012 Semester Phone: E Mail: Office: Office Hours: Course Description: This course is designed for the student with an interest in organizational and business

More information

SAMPLE ONLY. COMM 304 Interpersonal Communication Spring 2015 Tu/Th 11:00 12:20 ANN L101

SAMPLE ONLY. COMM 304 Interpersonal Communication Spring 2015 Tu/Th 11:00 12:20 ANN L101 COMM 304 Interpersonal Communication Spring 2015 Tu/Th 11:00 12:20 ANN L101 Instructor: Jillian Pierson, Ph.D. jilliank@usc.edu Office: Office Hours: ASC 333 & ANN 306 M/W 9:15-9:45 am T/Th 12:30 to 1

More information

MGSC 590 Information Systems Development Course Syllabus for Spring 2008

MGSC 590 Information Systems Development Course Syllabus for Spring 2008 MGSC 590 Information Systems Development Course Syllabus for Spring 2008 Tue and Thu 2:00 p.m. - 3:15 p.m. Room 463, College of Business Administration http://dmsweb.moore.sc.edu/mgsc590/ Instructor: Dr.

More information

1.00 Lecture 1. Course information Course staff (TA, instructor names on syllabus/faq): 2 instructors, 4 TAs, 2 Lab TAs, graders

1.00 Lecture 1. Course information Course staff (TA, instructor names on syllabus/faq): 2 instructors, 4 TAs, 2 Lab TAs, graders 1.00 Lecture 1 Course Overview Introduction to Java Reading for next time: Big Java: 1.1-1.7 Course information Course staff (TA, instructor names on syllabus/faq): 2 instructors, 4 TAs, 2 Lab TAs, graders

More information

MATH 1310, SECTION 17086

MATH 1310, SECTION 17086 MATH 1310, SECTION 17086 College Algebra, Summer 2011 COURSE SYLLABUS Instructor: Shahinda Hafeez Email: shafeez@math.uh.edu Course Homepage: online.math.uh.edu/courses CourseWare: www.casa.uh.edu Overview

More information

CSCI 3136 Principles of Programming Languages

CSCI 3136 Principles of Programming Languages CSCI 3136 Principles of Programming Languages Faculty of Computer Science Dalhousie University Winter 2013 CSCI 3136 Principles of Programming Languages Faculty of Computer Science Dalhousie University

More information

University of Regina Faculty of Business Administration Management of Performance. BUS 361-001 Winter 2013: January 7, 2013 April 17, 2013

University of Regina Faculty of Business Administration Management of Performance. BUS 361-001 Winter 2013: January 7, 2013 April 17, 2013 University of Regina Faculty of Business Administration Management of Performance BUS 361-001 Winter 2013: January 7, 2013 April 17, 2013 Instructor: Caroline Graves Phone: (306) 787-3562 - daytime (306)

More information

Syllabus: IST451. Division of Business and Engineering. Penn State Altoona

Syllabus: IST451. Division of Business and Engineering. Penn State Altoona Syllabus: IST451 Division of Business and Engineering Penn State Altoona Course Title 1. IST451: Network Security-Spring 2012 2. Section 001 3. Credits: 3 Meeting Times 1. Lectures: Mondays and Wednesdays

More information

SYLLABUS: MKT 454.022, Monday evening 4:00-6:30pm; BU124 Spring Semester, 2012

SYLLABUS: MKT 454.022, Monday evening 4:00-6:30pm; BU124 Spring Semester, 2012 SYLLABUS: MKT 454.022, Monday evening 4:00-6:30pm; BU124 Spring Semester, 2012 Course: Marketing 454, Business-To- Business Marketing, 3 credit hours Department of Management, Marketing, and International

More information

ACG 3151-003 (10061) INTERMEDIATE THEORY III (3 credit hours) Tentative Syllabus spring 2012 Class hours: Wednesdays, 7:10 p.m. 10:00 p.m.

ACG 3151-003 (10061) INTERMEDIATE THEORY III (3 credit hours) Tentative Syllabus spring 2012 Class hours: Wednesdays, 7:10 p.m. 10:00 p.m. INTERMEDIATE THEORY III (3 credit hours) Tentative Syllabus spring 2012 Class hours: Wednesdays, 7:10 p.m. 10:00 p.m. LA 234 Instructor George R. Young II, PhD, CPA Phone: (954) 236-1195 E-mail: gyoung@fau.edu

More information

Computer Science Theory. From the course description:

Computer Science Theory. From the course description: Computer Science Theory Goals of Course From the course description: Introduction to the theory of computation covering regular, context-free and computable (recursive) languages with finite state machines,

More information

Sample Syllabus (C++) CSCI 1301 Introduction to Programming Principles

Sample Syllabus (C++) CSCI 1301 Introduction to Programming Principles Sample Syllabus (C++) CSCI 1301 Introduction to Programming Principles Knowledge Areas that contain topics and learning outcomes covered in the course Knowledge Areas Total Hours of Coverage Software Development

More information

Artificial Intelligence. Class: 3 rd

Artificial Intelligence. Class: 3 rd Artificial Intelligence Class: 3 rd Teaching scheme: 4 hours lecture credits: Course description: This subject covers the fundamentals of Artificial Intelligence including programming in logic, knowledge

More information

BRAZOSPORT COLLEGE LAKE JACKSON, TEXAS SYLLABUS ITSE 1432 INTRODUCTION TO VISUAL BASIC.NET PROGRAMMING

BRAZOSPORT COLLEGE LAKE JACKSON, TEXAS SYLLABUS ITSE 1432 INTRODUCTION TO VISUAL BASIC.NET PROGRAMMING BRAZOSPORT COLLEGE LAKE JACKSON, TEXAS SYLLABUS ITSE 1432: INTRODUCTION TO VISUAL BASIC.NET PROGRAMMING COMPUTER TECHNOLOGY & OFFICE ADMINISTRATION DEPARTMENT CATALOG DESCRIPTION ITSE 1432 INTRODUCTION

More information

San José State University Department of Electrical Engineering EE 198B, Senior Design Project II, All Sections, Spring 2015

San José State University Department of Electrical Engineering EE 198B, Senior Design Project II, All Sections, Spring 2015 San José State University Department of Electrical Engineering EE 198B, Senior Design Project II, All Sections, Spring 2015 Instructor: David Wahlgren Parent Office Location: ENGR 355 Telephone: (408)

More information

Syllabus Systems Analysis and Design Page 1 of 6

Syllabus Systems Analysis and Design Page 1 of 6 Syllabus Systems Analysis and Design Page 1 of 6 Austin Community College Department of Computer Studies and Advanced Technology Systems Analysis and Design ITSE1450-543 (capstone course) Syllabus Spring

More information

231 Consumer and Market Behavior Section 01 Summer 2015

231 Consumer and Market Behavior Section 01 Summer 2015 San José State University Lucas Graduate School of Business 231 Consumer and Market Behavior Section 01 Summer 2015 Instructor: Office Location: Telephone: Email: Office Hours: Class Days/Time: Classroom:

More information

University of Toronto Department of Electrical and Computer Engineering. Midterm Examination. CSC467 Compilers and Interpreters Fall Semester, 2005

University of Toronto Department of Electrical and Computer Engineering. Midterm Examination. CSC467 Compilers and Interpreters Fall Semester, 2005 University of Toronto Department of Electrical and Computer Engineering Midterm Examination CSC467 Compilers and Interpreters Fall Semester, 2005 Time and date: TBA Location: TBA Print your name and ID

More information

Introduction to Information Technology ITP 101x (4 Units)

Introduction to Information Technology ITP 101x (4 Units) Objective Concepts Introduction to Information Technology ITP 101x (4 Units) Upon completing this course, students will: - Understand the fundamentals of information technology - Learn core concepts of

More information

BUS4 118S Big Data San José State University Fall 2014

BUS4 118S Big Data San José State University Fall 2014 BUS4 118S Big Data San José State University Fall 2014 When and Where When: Thursday 6:00 pm 8:45 pm Where: Boccardo Business Classroom (BBC) 320 Instructor Dr. Scott Jensen Office: BT 252 Phone: (408)

More information

FINN 3271-021 Principles of Risk Management and Insurance Summer 2015

FINN 3271-021 Principles of Risk Management and Insurance Summer 2015 FINN 3271-021 Principles of Risk Management and Insurance Summer 2015 This syllabus contains the policies and expectations I have established for Principles of Risk Management and Insurance. Please read

More information

CSCI E 98: Managed Environments for the Execution of Programs

CSCI E 98: Managed Environments for the Execution of Programs CSCI E 98: Managed Environments for the Execution of Programs Draft Syllabus Instructor Phil McGachey, PhD Class Time: Mondays beginning Sept. 8, 5:30-7:30 pm Location: 1 Story Street, Room 304. Office

More information

University of Colorado Denver College of Engineering & Applied Science CVEN 5235 Advanced Construction Engineering

University of Colorado Denver College of Engineering & Applied Science CVEN 5235 Advanced Construction Engineering College of Engineering & Applied Science Advanced Construction Engineering Class Information: Spring 2015 M and W 5:00-6:15pm Location NC 1323 Instructor Information: Heidi Brothers Heidi.brothers@ucdenver.edu

More information

This four (4) credit hour. Students will explore tools and techniques used penetrate, exploit and infiltrate data from computers and networks.

This four (4) credit hour. Students will explore tools and techniques used penetrate, exploit and infiltrate data from computers and networks. Integrated Science & Technology 457 Network Penetration and Attack Course Syllabus Spring 2014 MWF 10:00 10:50, W 12:00 12:50 Morrow Library 121 Instructor: Bill Gardner, Assistant Professor Office: 213

More information

Philadelphia University Faculty of Information Technology Department of Computer Science First Semester, 2007/2008.

Philadelphia University Faculty of Information Technology Department of Computer Science First Semester, 2007/2008. Philadelphia University Faculty of Information Technology Department of Computer Science First Semester, 2007/2008 Course Syllabus Course Title: Theory of Computation Course Level: 3 Lecture Time: Course

More information

Syllabus -- Spring 2016 Juvenile Justice (CRJU 3310 -- CRN 7031)

Syllabus -- Spring 2016 Juvenile Justice (CRJU 3310 -- CRN 7031) Syllabus -- Spring 2016 Juvenile Justice (CRJU 3310 -- CRN 7031) 1. GENERAL INFORMATION Title: Juvenile Justice Instructor: John Stuart Batchelder, 309 Hansford Hall, 706-864 1907 (office) College: Arts

More information

INFM 700: Information Architecture

INFM 700: Information Architecture INFM 700: Information Architecture Section SG01: Fall 2014 Wednesdays 6-8:45 p.m., Building 3, Room 4215 Dr. Katy Lawley, Instructor katy.lawley@gmail.com 301-454-0910 (voice or text) College Park: Hornbake

More information

COURSE SYLLABUS PHILOSOPHY 001 CRITICAL THINKING AND WRITING SPRING 2012

COURSE SYLLABUS PHILOSOPHY 001 CRITICAL THINKING AND WRITING SPRING 2012 1 COURSE SYLLABUS PHILOSOPHY 001 CRITICAL THINKING AND WRITING SPRING 2012 All students are required to read and have a thorough understanding of the syllabus. Any questions or concerns need to be addressed

More information

SJSU School of Journalism and Mass Communications Journalism 132, Section 1 Information Gathering Spring 2015

SJSU School of Journalism and Mass Communications Journalism 132, Section 1 Information Gathering Spring 2015 SJSU School of Journalism and Mass Communications Journalism 132, Section 1 Information Gathering Spring 2015 Contact Information Instructor: Office Location: Richard Craig DBH108 Telephone: (408) 924-3287

More information

ISM 4113: SYSTEMS ANALYSIS & DESIGN

ISM 4113: SYSTEMS ANALYSIS & DESIGN GENERAL INFORMATION: ISM 4113: SYSTEMS ANALYSIS & DESIGN COURSE SYLLABUS Class Times: Tuesday, Thursday 9:35 11:30 AM Class Location: HVNR 240 Professor: Dr. Aditi Mukherjee Office; Phone: STZ 360, 39-20648

More information

ITS1100: Train the Trainer

ITS1100: Train the Trainer Course Syllabus ITS1100: Train the Trainer Course Information Prerequisites Required permissions Classroom location Meeting days Class hours Department location Web page None None Skylight Room- 306, 17

More information

College Algebra Online Course Syllabus

College Algebra Online Course Syllabus VALENCIA COMMUNITY COLLEGE EAST CAMPUS MAC 1114 COLLEGE TRIGONOMETRY (ONLINE COURSE) SYLLABUS Term/Year: Spring 2009 CRN: 22607 Professor: Dr. Agatha Shaw Phone: (407) 582 2117 Office: 8-249 Student Engagement

More information

Dr. Gus C. Lease. Instructor: MUSIC BUILDING, Room 185. Office Location: 1/408/924-4678. Telephone:

Dr. Gus C. Lease. Instructor: MUSIC BUILDING, Room 185. Office Location: 1/408/924-4678. Telephone: San José State University School of Music and Dance/Music Department Course #20398, Music Appreciation 10A, Section 5 Spring Semester, January 22 - May 23, 2015 Instructor: Office Location: Telephone:

More information

The course assumes successful completion of CSCI E-50a and CSCI E-50b, i.e. at least two semesters of programming, with a grade of C- or better.

The course assumes successful completion of CSCI E-50a and CSCI E-50b, i.e. at least two semesters of programming, with a grade of C- or better. Syllabus Artificial Intelligence CSCI E-220 Fall 2012 Time Thursdays, 5:30-7:30pm Location Maxwell-Dworkin G135 Instructor Eric Breck (http://www-personal.umich.edu/~ebreck) Email ebreck@fas.harvard.edu

More information

Scanning and parsing. Topics. Announcements Pick a partner by Monday Makeup lecture will be on Monday August 29th at 3pm

Scanning and parsing. Topics. Announcements Pick a partner by Monday Makeup lecture will be on Monday August 29th at 3pm Scanning and Parsing Announcements Pick a partner by Monday Makeup lecture will be on Monday August 29th at 3pm Today Outline of planned topics for course Overall structure of a compiler Lexical analysis

More information

IST639 Enterprise Technologies Course Syllabus Spring 2014

IST639 Enterprise Technologies Course Syllabus Spring 2014 Location: Hinds Hall 117 Wednesday Nights 5:15 PM to 8:05 PM Doug Taber 315-558-2359 pdtaber@syr.edu Office Hours: By Appointment Course Overview IST639 builds the basic understanding of the technical

More information

Systems and Internet Marketing Syllabus Spring 2011 Department of Management, Marketing and International Business

Systems and Internet Marketing Syllabus Spring 2011 Department of Management, Marketing and International Business Systems and Internet Marketing Syllabus Spring 2011 Department of Management, Marketing and International Business MKT 425.022 (3 credit hour class) Wednesday, 4:00 6:30 pm, BU 465 Instructor: Dr. Charlotte

More information

MATHEMATICAL TOOLS FOR ECONOMICS ECON 1078-001 SPRING 2012

MATHEMATICAL TOOLS FOR ECONOMICS ECON 1078-001 SPRING 2012 MATHEMATICAL TOOLS FOR ECONOMICS ECON 1078-001 SPRING 2012 Instructor: Hakon Skjenstad Class Time: M, W, F, 12:00-12:50pm Classroom: DUAN G125 Email: hakon.skjenstad@colorado.edu Course Website: CULearn

More information

COMPUTER SCIENCE, BACHELOR OF SCIENCE (B.S.)

COMPUTER SCIENCE, BACHELOR OF SCIENCE (B.S.) VCU 1 COMPUTER SCIENCE, BACHELOR OF SCIENCE (B.S.) The Bachelor of Science in Computer Science is built on a rigorous, highly concentrated, accredited curriculum of computer science courses. The program

More information

CS 2302 Data Structures Spring 2015

CS 2302 Data Structures Spring 2015 1. General Information Instructor: CS 2302 Data Structures Spring 2015 Olac Fuentes Email: ofuentes@utep.edu Web: www.cs.utep.edu/ofuentes Office hours: Tuesdays and Thursdays 2:00-3:30, or by appointment,

More information

SYLLABUS MAC 1105 COLLEGE ALGEBRA Spring 2011 Tuesday & Thursday 12:30 p.m. 1:45 p.m.

SYLLABUS MAC 1105 COLLEGE ALGEBRA Spring 2011 Tuesday & Thursday 12:30 p.m. 1:45 p.m. SYLLABUS MAC 1105 COLLEGE ALGEBRA Spring 2011 Tuesday & Thursday 12:30 p.m. 1:45 p.m. Instructor: Val Mohanakumar Office Location: Office Phone #: 253 7351 Email: vmohanakumar@hccfl.edu Webpage: http://www.hccfl.edu/faculty-info/vmohanakumar.aspx.

More information

02 B The Java Virtual Machine

02 B The Java Virtual Machine 02 B The Java Virtual Machine CS1102S: Data Structures and Algorithms Martin Henz January 22, 2010 Generated on Friday 22 nd January, 2010, 09:46 CS1102S: Data Structures and Algorithms 02 B The Java Virtual

More information

SI 539, Winter 2014 Complex Web Design

SI 539, Winter 2014 Complex Web Design SI 539, Winter 2014 Complex Web Design Lecture: Wednesday 1:00-4:00pm Office Hours*: Tuesdays 12:00pm 2:00pm *Please check my Google Calendar for updates http://collemc.people.si.umich.edu/ Instructor:

More information

Compiler I: Syntax Analysis Human Thought

Compiler I: Syntax Analysis Human Thought Course map Compiler I: Syntax Analysis Human Thought Abstract design Chapters 9, 12 H.L. Language & Operating Sys. Compiler Chapters 10-11 Virtual Machine Software hierarchy Translator Chapters 7-8 Assembly

More information

Professor: Dr. Esra Memili Email: e_memili@uncg.edu Office: 370 Bryan Office Hours: Monday 2:00-6:00pm and 8:50-9:50pm, and by appointment

Professor: Dr. Esra Memili Email: e_memili@uncg.edu Office: 370 Bryan Office Hours: Monday 2:00-6:00pm and 8:50-9:50pm, and by appointment University of North Carolina at Greensboro Bryan School of Business and Economics Marketing, Entrepreneurship, Hospitality and Tourism Spring 2016 ENT 336-01 Opportunities to Action: Business Plan 6:00-8:50pm

More information

Technology and Online Computer Access Requirements: Lake-Sumter State College Course Syllabus

Technology and Online Computer Access Requirements: Lake-Sumter State College Course Syllabus Lake-Sumter State College Course Syllabus Course / Prefix Number CTS1832 Course Title: Web Authoring II CRN: 10009 Credit: 3 Term: Fall 2015 This course is a continuation of skills and concepts introduced

More information

CS 300 Data Structures Syllabus - Fall 2014

CS 300 Data Structures Syllabus - Fall 2014 CS 300 Data Structures Syllabus - Fall 2014 Catalog Description Data structures are fundamental to advanced, efficient programming. Topics including asymptotic analysis, stacks, queues, linked lists, trees,

More information

Course Title: Advanced Topics in Quantitative Methods: Educational Data Science Practicum

Course Title: Advanced Topics in Quantitative Methods: Educational Data Science Practicum COURSE NUMBER: APSTA- GE.2017 Course Title: Advanced Topics in Quantitative Methods: Educational Data Science Practicum Number of Credits: 2 Meeting Pattern: 3 hours per week, 7 weeks; first class meets

More information

Computer Science 1015F ~ 2010 ~ Notes to Students

Computer Science 1015F ~ 2010 ~ Notes to Students Computer Science 1015F ~ 2010 ~ Notes to Students Course Description Computer Science 1015/8F and 1016S together constitute a complete Computer Science curriculum for first year students, offering an introduction

More information

TMGT 352.01W Principles of Cost Engineering Course Syllabus: Spring 2013 Online ecollege Course

TMGT 352.01W Principles of Cost Engineering Course Syllabus: Spring 2013 Online ecollege Course TMGT 352.01W Principles of Cost Engineering Course Syllabus: Spring 2013 Online ecollege Course Instructor: Wen-Hsing Liu, Ph.D. Ad-Interim Assistant Professor Department of Engineering & Technology Office

More information

University of Central Oklahoma Spring 2012 Undergraduate Course Syllabus. "Transforming Academic Excellence into Professional Competence"

University of Central Oklahoma Spring 2012 Undergraduate Course Syllabus. Transforming Academic Excellence into Professional Competence University of Central Oklahoma Spring 2012 Undergraduate Course Syllabus "Transforming Academic Excellence into Professional Competence" Course Information Course Title: Careers and Technologies in Criminal

More information

SERP 523b: Braille 2 University of Arizona Department of Special Education, Rehabilitation and School Psychology Spring 2009

SERP 523b: Braille 2 University of Arizona Department of Special Education, Rehabilitation and School Psychology Spring 2009 SERP 523b: Braille 2 University of Arizona Department of Special Education, Rehabilitation and School Psychology Spring 2009 L. Penny Rosenblum Office: 520-621-1223 University of Arizona Fax: 520-621-3821

More information

MGMT 280 Impact Investing Ed Quevedo

MGMT 280 Impact Investing Ed Quevedo MGMT 280 Impact Investing Ed Quevedo Description This course surveys the principles of impact investing, capital markets, and creation of new investment and financial instruments designed to create blended

More information

Programming Language Concepts for Software Developers

Programming Language Concepts for Software Developers Programming Language Concepts for Software Developers Peter Sestoft IT University of Copenhagen, Denmark sestoft@itu.dk Abstract This note describes and motivates our current plans for an undergraduate

More information

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students Eastern Washington University Department of Computer Science Questionnaire for Prospective Masters in Computer Science Students I. Personal Information Name: Last First M.I. Mailing Address: Permanent

More information

C Compiler Targeting the Java Virtual Machine

C Compiler Targeting the Java Virtual Machine C Compiler Targeting the Java Virtual Machine Jack Pien Senior Honors Thesis (Advisor: Javed A. Aslam) Dartmouth College Computer Science Technical Report PCS-TR98-334 May 30, 1998 Abstract One of the

More information

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students Eastern Washington University Department of Computer Science Questionnaire for Prospective Masters in Computer Science Students I. Personal Information Name: Last First M.I. Mailing Address: Permanent

More information

University of Florida at Gainesville Linguistics Program 4131 Turlington Hall LIN 6084-7908 Introduction to Graduate Research

University of Florida at Gainesville Linguistics Program 4131 Turlington Hall LIN 6084-7908 Introduction to Graduate Research Time: Tues. 8-10th periods (3.00-6:00) Location: Anderson 013 University of Florida at Gainesville Linguistics Program 4131 Turlington Hall LIN 6084-7908 Introduction to Graduate Research Professor: Ratree

More information

COMPUTER SCIENCE. FACULTY: Jennifer Bowen, Chair Denise Byrnes, Associate Chair Sofia Visa

COMPUTER SCIENCE. FACULTY: Jennifer Bowen, Chair Denise Byrnes, Associate Chair Sofia Visa FACULTY: Jennifer Bowen, Chair Denise Byrnes, Associate Chair Sofia Visa COMPUTER SCIENCE Computer Science is the study of computer programs, abstract models of computers, and applications of computing.

More information

Business Administration Online Course - Plagiarism and Fraud

Business Administration Online Course - Plagiarism and Fraud Business Administration Course Number: BUAD 335 Course Title: ELECTRONIC COMMERCE Credits: 3 Calendar Description: This course focuses on the recent growth of buying and selling goods and services over

More information

Programming Language Pragmatics

Programming Language Pragmatics Programming Language Pragmatics THIRD EDITION Michael L. Scott Department of Computer Science University of Rochester ^ШШШШШ AMSTERDAM BOSTON HEIDELBERG LONDON, '-*i» ЩЛ< ^ ' m H NEW YORK «OXFORD «PARIS»SAN

More information

CS 341: Foundations of Computer Science II elearning Section Syllabus, Spring 2015

CS 341: Foundations of Computer Science II elearning Section Syllabus, Spring 2015 CS 341: Foundations of Computer Science II elearning Section Syllabus, Spring 2015 Course Info Instructor: Prof. Marvin K. Nakayama Office: GITC 4312 Phone: 973-596-3398 E-mail: marvin@njit.edu (Be sure

More information

Biology 45 ONLINE Introduction to Human Nutrition

Biology 45 ONLINE Introduction to Human Nutrition Biology 45 ONLINE Introduction to Human Nutrition Winter 2016 Instructor Anna Miller, MS., RD Phone 408.864.5576 Email milleranna@fhda.edu Write BIO45 Online in the subject Office Hours Mondays and Wednesdays

More information

http://connect.mheducation.com/class/e-murphy-acc-308-winter-2015-t-th-1150-am-to-120-pm

http://connect.mheducation.com/class/e-murphy-acc-308-winter-2015-t-th-1150-am-to-120-pm DePaul University School of Accountancy Accounting 308 Section 502 11:50 to 1:20 pm Strobel Section - Course Syllabus - Winter Quarter, 2015 Professor: Elizabeth A. Murphy, PhD, MBA, CPA Office Location:

More information

PCA 342B, andia<at>post.harvard.edu, (305)348 6703 Spring 2015

PCA 342B, andia<at>post.harvard.edu, (305)348 6703 Spring 2015 SYLLABUS CATALOG DESCRIPTION (3). Study of the ethical, legal, financial, and managerial aspects of professional practice in architecture. LOCATION AND TIME Academic Health Center 4-101. Tuesdays: 6:15PM

More information

HISTORY OF PSYCHOLOGY PSY 4000 (40) 25700 ONLINE SPRING SEMESTER, 2015

HISTORY OF PSYCHOLOGY PSY 4000 (40) 25700 ONLINE SPRING SEMESTER, 2015 HISTORY OF PSYCHOLOGY PSY 4000 (40) 25700 ONLINE SPRING SEMESTER, 2015 INSTRUCTOR: OFFICE HOURS: TELEPHONE: EMAIL: MEETING TIMES: Palwasha Ahad, Ph.D. Email is quickest way to get in contact with me. I

More information

April 5, 2004. Dr. Scott Wills Chair, Institute Undergraduate Curriculum Committee ECE 0250

April 5, 2004. Dr. Scott Wills Chair, Institute Undergraduate Curriculum Committee ECE 0250 April 5, 2004 Dr. Scott Wills Chair, Institute Undergraduate Curriculum Committee ECE 0250 The School of Electrical and Computer Engineering requests Institute Undergraduate Curriculum Committee approval

More information

Course Overview Principles of Project Management

Course Overview Principles of Project Management Course Overview Principles of Project Management 1. Catalog Description: In today s cost-competitive and often complex work environment, engineers are very likely to be called upon to manage projects (or

More information

Course Syllabus PEHR 2990 Intro to Intercollegiate Athletic Administration Dixie State College of Utah Spring 2013

Course Syllabus PEHR 2990 Intro to Intercollegiate Athletic Administration Dixie State College of Utah Spring 2013 Course Syllabus PEHR 2990 Intro to Intercollegiate Athletic Administration Dixie State College of Utah Spring 2013 Instructor: Jason Herbers Office: North Instructional Building 107 Office Hours: 10:00-11:00

More information

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students Eastern Washington University Department of Computer Science Questionnaire for Prospective Masters in Computer Science Students I. Personal Information Name: Last First M.I. Mailing Address: Permanent

More information

How to make the computer understand? Lecture 15: Putting it all together. Example (Output assembly code) Example (input program) Anatomy of a Computer

How to make the computer understand? Lecture 15: Putting it all together. Example (Output assembly code) Example (input program) Anatomy of a Computer How to make the computer understand? Fall 2005 Lecture 15: Putting it all together From parsing to code generation Write a program using a programming language Microprocessors talk in assembly language

More information

Multimedia 100 Syllabus

Multimedia 100 Syllabus Multimedia 1 Syllabus Course information Introduction to Multimedia Multimedia 1 Section Number 836 Fall 1 Etudes Instructor / Contact Information Brian Olson FA 3 Office Please email me for in person

More information

Department of Computer & Information Sciences. CSCI-445: Computer and Network Security Syllabus

Department of Computer & Information Sciences. CSCI-445: Computer and Network Security Syllabus Department of Computer & Information Sciences CSCI-445: Computer and Network Security Syllabus Course Description This course provides detailed, in depth overview of pressing network security problems

More information

Course: ISYS 4373 Application Development with Java Prerequisite: ISYS 3293

Course: ISYS 4373 Application Development with Java Prerequisite: ISYS 3293 COURSE SYLLABUS Course: ISYS 4373 Application Development with Java Prerequisite: ISYS 3293 Welcome: Welcome to ISYS 4373, an introduction to Java programming. The purpose of this course is to provide

More information

Karen D.W. Patterson, PhD Office: ASM 2089 Telephone: 277.2807 E-mail: patterson@unm.edu

Karen D.W. Patterson, PhD Office: ASM 2089 Telephone: 277.2807 E-mail: patterson@unm.edu Karen D.W. Patterson, PhD Office: ASM 2089 Telephone: 277.2807 E-mail: patterson@unm.edu SYLLABUS STRATEGIC MANAGEMENT 498 Spring 2016 Class Room: ASM 1070 Office hours: Wednesday 2:00 3:00 pm, Thursday

More information

Computer Programming & Information Systems BCS451 Virtualization / Cloud Computing. Outline

Computer Programming & Information Systems BCS451 Virtualization / Cloud Computing. Outline Computer Programming & Information Systems BCS451 Virtualization / Cloud Computing Professor: Tolga Tohumcu VMware vsphere 5 Install, Configure, Manage Office Location: Whitman 109 E-mail: tohumct@farmingdale.edu

More information

English 3010IA: Writing for Business

English 3010IA: Writing for Business English 3010IA: Writing for Business CRN 20347 Spring 2015 3 semester hours Web only on BlazeView Dr. Lee Campbell Department of English College of Arts and Sciences Valdosta State University Valdosta,

More information

FACULTY OF MANAGEMENT PROFESSIONAL CONSULTING MGMT 3901 Y SPRING 2016

FACULTY OF MANAGEMENT PROFESSIONAL CONSULTING MGMT 3901 Y SPRING 2016 FACULTY OF MANAGEMENT PROFESSIONAL CONSULTING MGMT 3901 Y SPRING 2016 Tuesdays, 6:00pm-8:50pm Room: S4027 INSTRUCTOR OFFICE HOURS Shawn DeGreeve shawn.degreeve@uleth.ca 403.650.6118 Tuesdays 5:00-5:50pm

More information

SCM 432 Syllabus Spring 2015 Dr. Taube Page 1

SCM 432 Syllabus Spring 2015 Dr. Taube Page 1 SCM 432 Syllabus Spring 2015 Dr. Taube Page 1 University of North Carolina at Greensboro Bryan School of Business & Economics Department of Information Systems & Supply Chain Management Spring 2015 Course

More information

ISM 4210: DATABASE MANAGEMENT

ISM 4210: DATABASE MANAGEMENT GENERAL INFORMATION: ISM 4210: DATABASE MANAGEMENT COURSE SYLLABUS Class Times: Tuesday, Thursday 9:35 11:30 AM Class Location: HVNR 240 Professor: Dr. Aditi Mukherjee Office; Phone: STZ 360, 39-20648

More information

CSC-570 Introduction to Database Management Systems

CSC-570 Introduction to Database Management Systems The American University College of Arts and Sciences Department of Computer Science CSC-570 Introduction to Database Management Systems Semester: Fall 2011 Section: 001 Meeting Time(s): Wednesday 5:30

More information

Dr. Angela Guercio. Spring 2011

Dr. Angela Guercio. Spring 2011 CS 33101 Structure of Programming Languages Dr. Angela Guercio Spring 2011 Instructor Angela Guercio Office: 424, Main Hall Phone: 330 244 3424 (KSU ext 53424) Best way to contact me: aguercio@kent.edu

More information

Florida Gulf Coast University Lutgert College of Business Marketing Department MAR3503 Consumer Behavior Spring 2015

Florida Gulf Coast University Lutgert College of Business Marketing Department MAR3503 Consumer Behavior Spring 2015 Course name: Class schedule: Course mode: Classroom: Lutgert Hall, Room 2208 CRN: 10141 Consumer Behavior Tuesday & Thursday, 9:30 AM 10:45 AM On campus, face-to-face meetings Credit hours: 3 Final exam:

More information

Texas A&M University-Commerce Syllabus Accounting Information Systems - Acct 326.01W & 326.02W

Texas A&M University-Commerce Syllabus Accounting Information Systems - Acct 326.01W & 326.02W Texas A&M University-Commerce Syllabus Accounting - Acct 326.01W & 326.02W Course Time and Location: Instructor: E-mail: Phone: Office Hours: Online Annette Taggart, MBA, CPA annette.taggart@tamuc.edu

More information

CMSC 10600 Fundamentals of Computer Programming II (C++)

CMSC 10600 Fundamentals of Computer Programming II (C++) CMSC 10600 Fundamentals of Computer Programming II (C++) Department of Computer Science University of Chicago Winter 2011 Quarter Dates: January 3 through March 19, 2011 Lectures: TuTh 12:00-13:20 in Ryerson

More information

After completing SI- 539, students will have a working personal portfolio website in production.

After completing SI- 539, students will have a working personal portfolio website in production. SI 539, Fall 2014 Complex Web Design Lecture: Friday: 1:00pm 3:00pm *Must leave by 3:15 Discussion Sections Varies Office Hours*: Tues: 11:35 12:35 Wed mornings *Please check my Google Calendar for updates

More information

Canisius College Computer Science Department Computer Programming for Science CSC107 & CSC107L Fall 2014

Canisius College Computer Science Department Computer Programming for Science CSC107 & CSC107L Fall 2014 Canisius College Computer Science Department Computer Programming for Science CSC107 & CSC107L Fall 2014 Class: Tuesdays and Thursdays, 10:00-11:15 in Science Hall 005 Lab: Tuesdays, 9:00-9:50 in Science

More information

Division of Mathematical Sciences

Division of Mathematical Sciences Division of Mathematical Sciences Chair: Mohammad Ladan, Ph.D. The Division of Mathematical Sciences at Haigazian University includes Computer Science and Mathematics. The Bachelor of Science (B.S.) degree

More information