CSc 520 Principles of Programming Languages. Example Language Translators. What s a Language Translator??? 2: Translators

Size: px
Start display at page:

Download "CSc 520 Principles of Programming Languages. Example Language Translators. What s a Language Translator??? 2: Translators"

Transcription

1 What s a Compler??? Sprng CSc 520 Prncples of Programmng Languages 2: Translators Chrstan Collberg collberg@cs.arzona.edu Department of Computer Scence Unversty of Arzona Copyrght c 2004 Chrstan Collberg [] 520 Sprng At the very basc level a compler translates a computer program from source code to some knd of executable code: x.c x.java source Compler errors x.s asm x.class Often the source code s smply a text fle and the executable code s a resultng assembly language program: gcc -S x.c reads the C source fle x.c and generates an assembly code fle x.s. Or the output can be a vrtual machne code: javac x.java produces x.class. [2] What s a Language Translator??? Example Language Translators A compler s really a specal case of a language translator. A translator s a program that transforms a program P wrtten n a language L nto a program P 2 wrtten n another language L 2. Typcally, we desre P and P 2 to be semantcally equvalent,.e. they should behave dentcally. source language translator target language L A T E X Postscrpt FORTRAN C++ C.class x86 bnary latex2html ps2asc f2c cfront gcc SourceAgan fx32 html text C C assembly Java Alpha bnary

2 Compler Input Compler Output Text Fle Common on Unx. Syntax Tree A structure edtor uses ts knowledge of the source language syntax to help the user edt & run the program. It can send a syntax tree to the compler, relevng t of lexng & parsng. Assembly Unx complers do ths. Slow, but easy for the compler. Object.o-fles on Unx. Faster, snce we don t have to call the assembler. Executable Called a load-and-go-compler. Abstract Machne Serves as nput to an nterpreter. Fast turnaround tme. C-code Good for portablty. Sprng [5] 520 Sprng [6] Compler Tasks Compler Phases Statc Semantc Analyss Is the program (statcally) correct? If not, produce error messages to the user. Generaton The compler must produce code that can be executed. Symbolc Debug Informaton The compler should produce a descrpton of the source program needed by symbolc debuggers. Try man gdb. Cross References The compler may produce cross-referencng nformaton. Where are dentfers declared & referenced? Profler Informaton Where does my program spend most of ts executon tme? Try man gprof. A N A L Y S I S Lexcal Analyss Syntactc Analyss Semantc Analyss S Y N T H E S I S Intermedate Generaton Optmzaton Machne Generaton

3 Compler Phases Lexcal analyss Lexcal analyss Example The lexer reads the source fle and dvdes the text nto lexcal unts (tokens), such as: Reserved words BEGIN, IF,... dentfers x, StrngTokenzer,... specal characters +,,, ˆ,... numbers 30, 3.4,... comments ( text ), strngs "text". Lexcal errors (such as llegal character, undelmted character strng, comment wthout end ) are reported. Lexcal Analyss of Englsh The sentence The boy s cowbell won t play. would be translated to the lst of tokens the, boy+possessve, cowbell, Lexcal Analyss of Java The sentence x = 3.4 (9.0+y); would be translated to the lst of tokens wll, not, play <ID,x>, EQ, <FLOAT,3.4>, STAR, LPAREN, <FLOAT,9.0>, PLUS, <ID,y>, RPAREN, SEMICOLON Sprng [9] 520 Sprng [0] Compler Phases Syntactc analyss Syntactc analyss Example Syntax analyss ( parsng) determnes the structure of a sentence. The compler reads the tokens produced durng lexcal analyss and bulds an abstract syntax tree (AST), whch reflects the herarchcal structure of the nput program. Syntactc errors are reported to the user: mssng ;, BEGIN wthout END Syntactc Analyss of Englsh The sentence The boy plays cowbell. would be parsed nto the tree NP S Det N V VP NP N The boy plays cowbell S=sentence, NP=noun phrase, VP=verb phrase, Det=determner, N=noun, V=verb.

4 Syntactc analyss Example Compler Phases Semantc analyss Syntactc Analyss of Java The sentence x = 3.4 (9.0+y); would be parsed nto the AST ID x Assgn FLOAT 3.4 MUL FLOAT 9.0 ADD ID y The AST produced durng syntactc analyss s decorated wth attrbutes, whch are then evaluated. The attrbutes can represent any knd of nformaton such as expresson types. The compler also collects nformaton useful for future phases. Semantc errors are reported: dentfer not declared, nteger type expected. Sprng [3] 520 Sprng [4] Semantc analyss Example Semantc Analyss of Englsh In the sentence The boy plays hs cowbell. we determne that hs refers to the boy. In the sentence Semantc Analyss of Java statc float luftballons = 0; vod P() {nt luftballons = 99; System.out.prntln(luftballons); the compler must determne whch luftballons the prnt-statement refers to, that float luftballons=0 has the wrong type. Compler Phases IR Generaton From the decorated AST ths phase generates ntermedate code (IR). The IR adds an extra a level of abstracton between the hgh level AST and the very low level assembly code we want to generate. Ths smplfes code generaton. A carefully desgned IR allows us to buld complers for a number of languages and machnes, by mxng and matchng front-ends and back-ends.

5 IR Generaton Example Compler Phases Optmzaton IR Generaton of Englsh From the sentence Every boy has a cowbell. we could generate x; boy(x) has-cowbell(x) IR Generaton of Java From the sentence x = 3.4 (9.0+y); the compler could generate the (stack-based) IR code pusha x, pushf 3.4, pushf 9.0, push y, add, mul, assgn The (often optonal) code optmzaton phase transforms an IR program nto an equvalent but more effcent program. Typcal transformatons nclude common subexpresson elmnaton only compute an expresson once, even f t occurs more than once n the source), nlne expanson nsert a procedure s code at the call ste to reduce call overhead, algebrac transformatons A := A + A s faster than A := A 2. Sprng [7] 520 Sprng [8] Compler Phases Generaton Mult-pass Complaton The last complaton phase transforms the ntermedate code nto machne code, usually assembly code or lnk modules. Alternatvely, the compler generates Vrtual Machne (),.e. code for a software defned archtecture. Java complers, for example, generate class fles contanng bytecodes for the Java. The next slde shows the outlne of a typcal compler. In a unx envronment each pass could be a stand-alone program, and the passes could be connected by ppes: lex x.c parse sem r opt codegen > x.s For performance reasons the passes are usually ntegrated: front x.c > x.r back x.r > x.s The front-end does all analyss and IR generaton. The back-end optmzes and generates code.

6 Mult-pass Complaton... Mx-and-Match Complers source Lexer errors tokens errors Parser AST F R O N T Ada Pascal Modula 2 C++ E N D IR Optmze Machne Gen IR Gen Interm. Gen AST Semantc Analyser errors B A C K Sparc Mps IBM/370 E N D asm Ada Mps compler Pascal Mps compler Pascal 68k compler Sprng [2] 520 Sprng [22] Example Let s comple the procedure Foo, from start to fnsh: PROCEDURE Foo (); VAR : EGER; BEGIN := ; WHILE < 20 DO PR 2; := 2 + ; ENDDO; END Foo; The complaton phases are: Lexal Analyss Syntactc Analyss Semantc Analyss Intermedate code generaton Optmzaton Machne code generaton. Example Lexcal Analyss Break up the source code (a text fle) and nto tokens. Source Stream of Tokens PROCEDURE Foo (); PROCEDURE, <d,foo>, LPAR, RPAR, SC, VAR : EGER; VAR, <d,>, COLON, <d,eger>,sc, BEGIN := ; BEGIN, <d,>,ceq,<nt,>,sc, WHILE, <d,>, LT, <nt,20>,do, WHILE < 20 DO PR 2; := 2 + ; PR, <d,>, MUL, <nt,2>, SC, <d,>, CEQ, <d,>, MUL, <nt,2>, PLUS, <nt,>, SC, ENDDO, SC, END, <d,foo>, SC ENDDO; END Foo;

7 Example Lexcal Analyss... Example Syntactc Analyss We defned the followng set of tokens: TOKEN STRING TOKEN STRING PROCEDURE "PROCEDURE" <nt,> nteger lteral <d,foo> dentfer WHILE "WHILE" LPAR "(" LT "<" RPAR ")" DO "DO" SC ";" PR "PR" VAR "VAR" MUL "" COLON ":" PLUS "+" BEGIN "BEGIN" ENDDO "ENDDO" CEQ ":=" END "END" Stream of Tokens PROCEDURE, <d,foo>, LPAR,RPAR,SC,VAR,<d,>, COLON,<d,EGER>,SC, BEGIN,<d,>,CEQ,<nt,>, SC,WHILE,<d,>,LT, <nt,20>,do,pr,<d,>, MUL,<nt,2>,SC,<d,>, CEQ,<d,>,MUL, <nt,2>,plus,<nt,>,sc, ENDDO,SC,END,<d,Foo>,SC Abstract Syntax Tre PROC DECL WHILE < 20 PR Sprng [25] 520 Sprng [26] Example Semantc Analyss PROC DECL d:foo Args Decls Stats Abstract Syntax Tree Decorated Abstract Syntax Tree PROC DECL type:eger STAT Des Expr WHILE STAT Expr Body PROC DECL WHILE val: op:< Rght val:20 PR STAT Expr op: Rght STAT Des Expr op:+ Rght < 20 WHILE PR < BOOL 20 PR + val:2 op: Rght val: val:2

8 Example IR Generaton PROC DECL d:foo Args Decls Stats Decorated Abstract Syntax Tree Intermedate type:eger val: STAT Des Expr op:< type:bool Rght val:20 WHILE STAT Expr Body PR STAT Expr op: Rght val:2 STAT Des Expr op: Rght op:+ Rght val: PROC DECL WHILE < PR BOOL 20 [] [2] BRGE 20 [9] [3] MUL t 2 [4] PR t [5] MUL t 2 2 [6] ADD t 3 t 2 val:2 2 [7] t 3 [8] JUMP [2] [9] Sprng [29] 520 Sprng [30] Example IR Generaton... Example Optmzaton Intermedate [] [2] BRGE 20 [9] [3] MUL t 2 [4] PR t [5] MUL t 2 2 [6] ADD t 3 t 2 [7] t 3 [8] JUMP [2] Intermedate Defnton A, B A := B; BRGE A, B, C IF (A B) THEN contnue at nstructon C; MUL A, B, C A := B C; ADD A, B, C A := B + C; SHL A, B, C A:=shft B left C steps; PR A Prnt A and a newlne; Intermedate [] [2] BRGE 20 [9] [3] MUL t 2 [4] PR t [5] MUL t 2 2 [6] ADD t 3 t 2 [7] t 3 [8] JUMP [2] [9] Optmzed Intermedate [] [2] BRGE 20 [8] [3] SHL t [4] PR t [5] ADD t 2 t [6] t 2 [7] JUMP [2] [8] [9] JUMP A Contnue at nstructon A;

9 xample Machne Generaton Interpretaton Intermedate [] [2] BRGE 20 [8] [3] SHL t [4] PR t [5] ADD t 2 t [6] t 2 [7] JUMP [2] [8] MIPS Machne.data _:.word 0.text.globl man man: l $4, $32: bge $4, 20, $33 sll $a0, $4, l $v0, syscall addu $4, $a0, b $32 $33: sw $4, _ An nterpreter s lke a CPU, only n software. The compler generates vrtual machne () code rather than natve machne code. The nterpreter executes nstructons rather than natve machne code. Sprng [33] 520 Sprng [34] Interpretaton... Knds of Interpreters Interpreters are slow Often 0 00 tmes slower than executng machne code drectly. portable The vrtual machne code s not ted to any partcular archtecture. Interpreters work well wth very hgh-level, dynamc languages (APL,Prolog,ICON) where a lot s unknown at comple-tme (array bounds, etc). "APL/Prolog style (load and go/nteractve) nterpreter" Source Source Read, lex, parse, semantcs Read, lex, parse, semantcs Fle.vm Read read eval prnt Interpret Fle.vm read eval prnt "Java style nterpreter" Interpret

10 Knds of Interpreters... Actons n an Interpreter Source Fle.vm Just In Tme (JIT,Dynamc) Compler Read, lex, parse, semantcs Comple Natve Fle.vm Execute Internally, an nterpreter conssts of. The nterpreter engne, whch executes the nstructons. 2. Memory for storng user data. Often separated as a heap and a stack. 3. A stream of nstructons. Sprng [37] 520 Sprng [38] Actons n an Interpreter... Readngs and References Instruct onstream add store mul Memory Stack Heap I := Get next nstructon. Decode the nstructon. Op := the opcode Arg := st argument Arg2 := 2nd argument... Perform the functon of the opcode. "Hello!" Statc Data Read Louden: Introducton pp. 8, or the Dragon Book: Introducton pp. 24 A Smple Compler pp Some Complers pp or the Tger Book: Introducton pp. 5

11 Summary Summary... The structure of a compler depends on. the complexty of the language we re workng on (hgher complexty more passes), 2. the qualty of the code we hope to produce (better code more passes), 3. the degree of portablty we hope to acheve (more portable better separaton between front- and back-ends). 4. the number of people workng on the compler (more people more ndependent modules). Some hghly retargetable complers for hgh-level languages produce C-code, rather than machne code. Ths C-code s then compled by the natve C compler to machne code. Some languages (APL, LISP, Smalltalk, Java, ICON, Perl, Awk) are tradtonally nterpreted (executed n software by an nterpreter) rather than compled to machne code. Sprng [4] 520 Sprng [42] Summary... Some nterpreters use dynamc complaton (or jttng), swtchng between. nterpretng the vrtual machne code, 2. translatng the vrtual machne code to natve machne code, 3. executng the natve machne code, 4. optmzng the natve and/or vrtual machne code, and 5. throwng natve code away f t s no longer needed or takes up too much room. All ths s done dynamcally at runtme.

Assembler. Building a Modern Computer From First Principles.

Assembler. Building a Modern Computer From First Principles. Assembler Buldng a Modern Computer From Frst Prncples www.nand2tetrs.org Elements of Computng Systems, Nsan & Schocken, MIT Press, www.nand2tetrs.org, Chapter 6: Assembler slde Where we are at: Human Thought

More information

CSc 520 Principles of Programming Languages

CSc 520 Principles of Programming Languages CSc 520 Principles of Programming Languages 44: Interpreters Christian Collberg collberg@cs.arizona.edu Department of Computer Science University of Arizona Copyright c 2005 Christian Collberg [1] Compiler

More information

CSc 453. Compilers and Systems Software. 18 : Interpreters. Department of Computer Science University of Arizona. Kinds of Interpreters

CSc 453. Compilers and Systems Software. 18 : Interpreters. Department of Computer Science University of Arizona. Kinds of Interpreters CSc 453 Compiler source Lexer tokens Parser AST Compilers and Systems Software 18 : Interpreters VM Code Gen IR Interm. Code Gen AST Semantic Analyser Department of Computer Science University of Arizona

More information

CSc 453 Compilers and Systems Software

CSc 453 Compilers and Systems Software CSc 453 Compilers and Systems Software 3 : Lexical Analysis I Christian Collberg Department of Computer Science University of Arizona collberg@gmail.com Copyright c 2009 Christian Collberg August 23, 2009

More information

CSc 553. Principles of Compilation. 2 : Interpreters. Department of Computer Science University of Arizona

CSc 553. Principles of Compilation. 2 : Interpreters. Department of Computer Science University of Arizona CSc 553 Principles of Compilation 2 : Interpreters Department of Computer Science University of Arizona collberg@gmail.com Copyright c 2011 Christian Collberg Compiler source Lexer tokens Parser AST VM

More information

Harvard University CS 101 Fall 2005, Shimon Schocken. Assembler. Elements of Computing Systems 1 Assembler (Ch. 6)

Harvard University CS 101 Fall 2005, Shimon Schocken. Assembler. Elements of Computing Systems 1 Assembler (Ch. 6) Harvard Unversty CS 101 Fall 2005, Shmon Schocken Assembler Elements of Computng Systems 1 Assembler (Ch. 6) Why care about assemblers? Because Assemblers employ some nfty trcks Assemblers are the frst

More information

Assembler. Shimon Schocken. Spring Elements of Computing Systems 1 Assembler (Ch. 6) Compiler. abstract interface.

Assembler. Shimon Schocken. Spring Elements of Computing Systems 1 Assembler (Ch. 6) Compiler. abstract interface. IDC Herzlya Shmon Schocken Assembler Shmon Schocken Sprng 2005 Elements of Computng Systems 1 Assembler (Ch. 6) Where we are at: Human Thought Abstract desgn Chapters 9, 12 abstract nterface H.L. Language

More information

A Taste of Java and Object-Oriented Programming

A Taste of Java and Object-Oriented Programming Introducn Computer Scence Shm Schocken IDC Herzlya Lecture 1-2: Lecture 1-2: A Taste Java Object-Orented Programmng A Taste Java OO programmng, Shm Schocken, IDC Herzlya, www.ntro2cs.com slde 1 Lecture

More information

High level vs Low Level. What is a Computer Program? What does gcc do for you? Program = Instructions + Data. Basic Computer Organization

High level vs Low Level. What is a Computer Program? What does gcc do for you? Program = Instructions + Data. Basic Computer Organization What s a Computer Program? Descrpton of algorthms and data structures to acheve a specfc ojectve Could e done n any language, even a natural language lke Englsh Programmng language: A Standard notaton

More information

Compiler Design. Spring Register Allocation. Sample Exercises and Solutions. Prof. Pedro C. Diniz

Compiler Design. Spring Register Allocation. Sample Exercises and Solutions. Prof. Pedro C. Diniz Compler Desgn Sprng 2014 Regster Allocaton Sample Exercses and Solutons Prof. Pedro C. Dnz USC / Informaton Scences Insttute 4676 Admralty Way, Sute 1001 Marna del Rey, Calforna 90292 pedro@s.edu Regster

More information

CSc 453. Compilers and Systems Software. 13 : Intermediate Code I. Department of Computer Science University of Arizona

CSc 453. Compilers and Systems Software. 13 : Intermediate Code I. Department of Computer Science University of Arizona CSc 453 Compilers and Systems Software 13 : Intermediate Code I Department of Computer Science University of Arizona collberg@gmail.com Copyright c 2009 Christian Collberg Introduction Compiler Phases

More information

Course Introduction. Algorithm 8/31/2017. COSC 320 Advanced Data Structures and Algorithms. COSC 320 Advanced Data Structures and Algorithms

Course Introduction. Algorithm 8/31/2017. COSC 320 Advanced Data Structures and Algorithms. COSC 320 Advanced Data Structures and Algorithms Course Introducton Course Topcs Exams, abs, Proects A quc loo at a few algorthms 1 Advanced Data Structures and Algorthms Descrpton: We are gong to dscuss algorthm complexty analyss, algorthm desgn technques

More information

AADL : about scheduling analysis

AADL : about scheduling analysis AADL : about schedulng analyss Schedulng analyss, what s t? Embedded real-tme crtcal systems have temporal constrants to meet (e.g. deadlne). Many systems are bult wth operatng systems provdng multtaskng

More information

PBRT core. Announcements. pbrt. pbrt plug-ins

PBRT core. Announcements. pbrt. pbrt plug-ins Announcements PBRT core Dgtal Image Synthess Yung-Yu Chuang 9/27/2007 Please subscrbe the malng lst. Wndows complaton Debuggng n Wndows Doxygen (onlne, download or doxygen by yourself) HW#1 wll be assgned

More information

Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted from Hennessy & Patterson / 2003 Elsevier

Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted from Hennessy & Patterson / 2003 Elsevier Some materal adapted from Mohamed Youns, UMBC CMSC 611 Spr 2003 course sldes Some materal adapted from Hennessy & Patterson / 2003 Elsever Scence Performance = 1 Executon tme Speedup = Performance (B)

More information

CMPS 10 Introduction to Computer Science Lecture Notes

CMPS 10 Introduction to Computer Science Lecture Notes CPS 0 Introducton to Computer Scence Lecture Notes Chapter : Algorthm Desgn How should we present algorthms? Natural languages lke Englsh, Spansh, or French whch are rch n nterpretaton and meanng are not

More information

Virtual Memory. Background. No. 10. Virtual Memory: concept. Logical Memory Space (review) Demand Paging(1) Virtual Memory

Virtual Memory. Background. No. 10. Virtual Memory: concept. Logical Memory Space (review) Demand Paging(1) Virtual Memory Background EECS. Operatng System Fundamentals No. Vrtual Memory Prof. Hu Jang Department of Electrcal Engneerng and Computer Scence, York Unversty Memory-management methods normally requres the entre process

More information

Motivation. EE 457 Unit 4. Throughput vs. Latency. Performance Depends on View Point?! Computer System Performance. An individual user wants to:

Motivation. EE 457 Unit 4. Throughput vs. Latency. Performance Depends on View Point?! Computer System Performance. An individual user wants to: 4.1 4.2 Motvaton EE 457 Unt 4 Computer System Performance An ndvdual user wants to: Mnmze sngle program executon tme A datacenter owner wants to: Maxmze number of Mnmze ( ) http://e-tellgentnternetmarketng.com/webste/frustrated-computer-user-2/

More information

Esc101 Lecture 1 st April, 2008 Generating Permutation

Esc101 Lecture 1 st April, 2008 Generating Permutation Esc101 Lecture 1 Aprl, 2008 Generatng Permutaton In ths class we wll look at a problem to wrte a program that takes as nput 1,2,...,N and prnts out all possble permutatons of the numbers 1,2,...,N. For

More information

PHYSICS-ENHANCED L-SYSTEMS

PHYSICS-ENHANCED L-SYSTEMS PHYSICS-ENHANCED L-SYSTEMS Hansrud Noser 1, Stephan Rudolph 2, Peter Stuck 1 1 Department of Informatcs Unversty of Zurch, Wnterthurerstr. 190 CH-8057 Zurch Swtzerland noser(stuck)@f.unzh.ch, http://www.f.unzh.ch/~noser(~stuck)

More information

LLVM passes and Intro to Loop Transformation Frameworks

LLVM passes and Intro to Loop Transformation Frameworks LLVM passes and Intro to Loop Transformaton Frameworks Announcements Ths class s recorded and wll be n D2L panapto. No quz Monday after sprng break. Wll be dong md-semester class feedback. Today LLVM passes

More information

CSc 453. Code Generation I Christian Collberg. Compiler Phases. Code Generation Issues. Slide Compilers and Systems Software.

CSc 453. Code Generation I Christian Collberg. Compiler Phases. Code Generation Issues. Slide Compilers and Systems Software. Slide 16 2 Lexing, Parsing Semantic Analysis, Intermediate Code Generation Peephole Optimization Assembly Code Assembler Machine Code Register Allocation Intermediate Code Selection Scheduling Register

More information

Introduction to Programming. Lecture 13: Container data structures. Container data structures. Topics for this lecture. A basic issue with containers

Introduction to Programming. Lecture 13: Container data structures. Container data structures. Topics for this lecture. A basic issue with containers 1 2 Introducton to Programmng Bertrand Meyer Lecture 13: Contaner data structures Last revsed 1 December 2003 Topcs for ths lecture 3 Contaner data structures 4 Contaners and genercty Contan other objects

More information

Introduction. CSc 453. Compilers and Systems Software. 19 : Code Generation I. Department of Computer Science University of Arizona.

Introduction. CSc 453. Compilers and Systems Software. 19 : Code Generation I. Department of Computer Science University of Arizona. CSc 453 Compilers and Systems Software 19 : Code Generation I Introduction Department of Computer Science University of Arizona collberg@gmail.com Copyright c 2009 Christian Collberg Compiler Phases Optimize

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

Tsinghua University at TAC 2009: Summarizing Multi-documents by Information Distance

Tsinghua University at TAC 2009: Summarizing Multi-documents by Information Distance Tsnghua Unversty at TAC 2009: Summarzng Mult-documents by Informaton Dstance Chong Long, Mnle Huang, Xaoyan Zhu State Key Laboratory of Intellgent Technology and Systems, Tsnghua Natonal Laboratory for

More information

Machine Learning: Algorithms and Applications

Machine Learning: Algorithms and Applications 14/05/1 Machne Learnng: Algorthms and Applcatons Florano Zn Free Unversty of Bozen-Bolzano Faculty of Computer Scence Academc Year 011-01 Lecture 10: 14 May 01 Unsupervsed Learnng cont Sldes courtesy of

More information

ETAtouch RESTful Webservices

ETAtouch RESTful Webservices ETAtouch RESTful Webservces Verson 1.1 November 8, 2012 Contents 1 Introducton 3 2 The resource /user/ap 6 2.1 HTTP GET................................... 6 2.2 HTTP POST..................................

More information

An Optimal Algorithm for Prufer Codes *

An Optimal Algorithm for Prufer Codes * J. Software Engneerng & Applcatons, 2009, 2: 111-115 do:10.4236/jsea.2009.22016 Publshed Onlne July 2009 (www.scrp.org/journal/jsea) An Optmal Algorthm for Prufer Codes * Xaodong Wang 1, 2, Le Wang 3,

More information

CHARUTAR VIDYA MANDAL S SEMCOM Vallabh Vidyanagar

CHARUTAR VIDYA MANDAL S SEMCOM Vallabh Vidyanagar CHARUTAR VIDYA MANDAL S SEMCOM Vallabh Vdyanagar Faculty Name: Am D. Trved Class: SYBCA Subject: US03CBCA03 (Advanced Data & Fle Structure) *UNIT 1 (ARRAYS AND TREES) **INTRODUCTION TO ARRAYS If we want

More information

Notes on Organizing Java Code: Packages, Visibility, and Scope

Notes on Organizing Java Code: Packages, Visibility, and Scope Notes on Organzng Java Code: Packages, Vsblty, and Scope CS 112 Wayne Snyder Java programmng n large measure s a process of defnng enttes (.e., packages, classes, methods, or felds) by name and then usng

More information

Sequential search. Building Java Programs Chapter 13. Sequential search. Sequential search

Sequential search. Building Java Programs Chapter 13. Sequential search. Sequential search Sequental search Buldng Java Programs Chapter 13 Searchng and Sortng sequental search: Locates a target value n an array/lst by examnng each element from start to fnsh. How many elements wll t need to

More information

CSCI 104 Sorting Algorithms. Mark Redekopp David Kempe

CSCI 104 Sorting Algorithms. Mark Redekopp David Kempe CSCI 104 Sortng Algorthms Mark Redekopp Davd Kempe Algorthm Effcency SORTING 2 Sortng If we have an unordered lst, sequental search becomes our only choce If we wll perform a lot of searches t may be benefcal

More information

Programming in Fortran 90 : 2017/2018

Programming in Fortran 90 : 2017/2018 Programmng n Fortran 90 : 2017/2018 Programmng n Fortran 90 : 2017/2018 Exercse 1 : Evaluaton of functon dependng on nput Wrte a program who evaluate the functon f (x,y) for any two user specfed values

More information

Pass by Reference vs. Pass by Value

Pass by Reference vs. Pass by Value Pass by Reference vs. Pass by Value Most methods are passed arguments when they are called. An argument may be a constant or a varable. For example, n the expresson Math.sqrt(33) the constant 33 s passed

More information

CS 415 Midterm Exam Spring 2002

CS 415 Midterm Exam Spring 2002 CS 415 Midterm Exam Spring 2002 Name KEY Email Address Student ID # Pledge: This exam is closed note, closed book. Good Luck! Score Fortran Algol 60 Compilation Names, Bindings, Scope Functional Programming

More information

Outline. CIS 110: Introduction to Computer Programming. Review: Interactive Sum. More Cumulative Algorithms. Interactive Sum Trace (2)

Outline. CIS 110: Introduction to Computer Programming. Review: Interactive Sum. More Cumulative Algorithms. Interactive Sum Trace (2) Outlne CIS 110: Introducton to Computer Programmng More on Cumulatve Algorthms Processng Text Tacklng Programmng Problems Lecture 11 Text Processng and More On Desgn ( 4.2-4.3) 10/17/2011 CIS 110 (11fa)

More information

Load Balancing for Hex-Cell Interconnection Network

Load Balancing for Hex-Cell Interconnection Network Int. J. Communcatons, Network and System Scences,,, - Publshed Onlne Aprl n ScRes. http://www.scrp.org/journal/jcns http://dx.do.org/./jcns.. Load Balancng for Hex-Cell Interconnecton Network Saher Manaseer,

More information

News. Recap: While Loop Example. Reading. Recap: Do Loop Example. Recap: For Loop Example

News. Recap: While Loop Example. Reading. Recap: Do Loop Example. Recap: For Loop Example Unversty of Brtsh Columba CPSC, Intro to Computaton Jan-Apr Tamara Munzner News Assgnment correctons to ASCIIArtste.java posted defntely read WebCT bboards Arrays Lecture, Tue Feb based on sldes by Kurt

More information

CPE 628 Chapter 2 Design for Testability. Dr. Rhonda Kay Gaede UAH. UAH Chapter Introduction

CPE 628 Chapter 2 Design for Testability. Dr. Rhonda Kay Gaede UAH. UAH Chapter Introduction Chapter 2 Desgn for Testablty Dr Rhonda Kay Gaede UAH 2 Introducton Dffcultes n and the states of sequental crcuts led to provdng drect access for storage elements, whereby selected storage elements are

More information

Concurrent models of computation for embedded software

Concurrent models of computation for embedded software Concurrent models of computaton for embedded software and hardware! Researcher overvew what t looks lke semantcs what t means and how t relates desgnng an actor language actor propertes and how to represent

More information

Loop Transformations, Dependences, and Parallelization

Loop Transformations, Dependences, and Parallelization Loop Transformatons, Dependences, and Parallelzaton Announcements Mdterm s Frday from 3-4:15 n ths room Today Semester long project Data dependence recap Parallelsm and storage tradeoff Scalar expanson

More information

Polyhedral Compilation Foundations

Polyhedral Compilation Foundations Polyhedral Complaton Foundatons Lous-Noël Pouchet pouchet@cse.oho-state.edu Dept. of Computer Scence and Engneerng, the Oho State Unversty Feb 8, 200 888., Class # Introducton: Polyhedral Complaton Foundatons

More information

DLK Pro the all-rounder for mobile data downloading. Tailor-made for various requirements.

DLK Pro the all-rounder for mobile data downloading. Tailor-made for various requirements. DLK Pro the all-rounder for moble data downloadng Talor-made for varous requrements www.dtco.vdo.com Smply brllant, brllantly smple Always the rght soluton The DLK Pro s the VDO product famly, whch sets

More information

Circuit Analysis I (ENGR 2405) Chapter 3 Method of Analysis Nodal(KCL) and Mesh(KVL)

Circuit Analysis I (ENGR 2405) Chapter 3 Method of Analysis Nodal(KCL) and Mesh(KVL) Crcut Analyss I (ENG 405) Chapter Method of Analyss Nodal(KCL) and Mesh(KVL) Nodal Analyss If nstead of focusng on the oltages of the crcut elements, one looks at the oltages at the nodes of the crcut,

More information

CE 221 Data Structures and Algorithms

CE 221 Data Structures and Algorithms CE 1 ata Structures and Algorthms Chapter 4: Trees BST Text: Read Wess, 4.3 Izmr Unversty of Economcs 1 The Search Tree AT Bnary Search Trees An mportant applcaton of bnary trees s n searchng. Let us assume

More information

Topic 5: semantic analysis. 5.5 Types of Semantic Actions

Topic 5: semantic analysis. 5.5 Types of Semantic Actions Top 5: semant analyss 5.5 Types of Semant tons Semant analyss Other Semant tons Other Types of Semant tons revously, all semant atons were for alulatng attrbute values. In a real ompler, other types of

More information

A mathematical programming approach to the analysis, design and scheduling of offshore oilfields

A mathematical programming approach to the analysis, design and scheduling of offshore oilfields 17 th European Symposum on Computer Aded Process Engneerng ESCAPE17 V. Plesu and P.S. Agach (Edtors) 2007 Elsever B.V. All rghts reserved. 1 A mathematcal programmng approach to the analyss, desgn and

More information

For instance, ; the five basic number-sets are increasingly more n A B & B A A = B (1)

For instance, ; the five basic number-sets are increasingly more n A B & B A A = B (1) Secton 1.2 Subsets and the Boolean operatons on sets If every element of the set A s an element of the set B, we say that A s a subset of B, or that A s contaned n B, or that B contans A, and we wrte A

More information

Learning the Kernel Parameters in Kernel Minimum Distance Classifier

Learning the Kernel Parameters in Kernel Minimum Distance Classifier Learnng the Kernel Parameters n Kernel Mnmum Dstance Classfer Daoqang Zhang 1,, Songcan Chen and Zh-Hua Zhou 1* 1 Natonal Laboratory for Novel Software Technology Nanjng Unversty, Nanjng 193, Chna Department

More information

Improving the Quality of Information Retrieval Using Syntactic Analysis of Search Query

Improving the Quality of Information Retrieval Using Syntactic Analysis of Search Query Improvng the Qualty of Informaton Retreval Usng Syntactc Analyss of Search Query Nadezhda Yarushkna 1[0000-0002-5718-8732], Aleksey Flppov 1[0000-0003-0008-5035], and Mara Grgorcheva 1[0000-0001-7492-5178]

More information

Concurrent Apriori Data Mining Algorithms

Concurrent Apriori Data Mining Algorithms Concurrent Apror Data Mnng Algorthms Vassl Halatchev Department of Electrcal Engneerng and Computer Scence York Unversty, Toronto October 8, 2015 Outlne Why t s mportant Introducton to Assocaton Rule Mnng

More information

The Codesign Challenge

The Codesign Challenge ECE 4530 Codesgn Challenge Fall 2007 Hardware/Software Codesgn The Codesgn Challenge Objectves In the codesgn challenge, your task s to accelerate a gven software reference mplementaton as fast as possble.

More information

AN ALGEBRAIC APPROACH TO CONSISTENCY CHECKING BETWEEN CLASS DIAGRAMS

AN ALGEBRAIC APPROACH TO CONSISTENCY CHECKING BETWEEN CLASS DIAGRAMS AN ALGEBRAIC AROACH TO CONSISTENC CHECKING BETWEEN CLASS DIAGRAMS HIDEKAZU ENJO, MOTONARI TANABU, JUNICHI IIJIMA NTT DATA Corporaton, okohama Natonal Unversty, Tokyo Insttute of Technology enouh@nttdata.co.p,

More information

Nachos Project 3. Speaker: Sheng-Wei Cheng 2010/12/16

Nachos Project 3. Speaker: Sheng-Wei Cheng 2010/12/16 Nachos Project Speaker: Sheng-We Cheng //6 Agenda Motvaton User Programs n Nachos Related Nachos Code for User Programs Project Assgnment Bonus Submsson Agenda Motvaton User Programs n Nachos Related Nachos

More information

Efficient Distributed File System (EDFS)

Efficient Distributed File System (EDFS) Effcent Dstrbuted Fle System (EDFS) (Sem-Centralzed) Debessay(Debsh) Fesehaye, Rahul Malk & Klara Naherstedt Unversty of Illnos-Urbana Champagn Contents Problem Statement, Related Work, EDFS Desgn Rate

More information

CAMAS-TR Progress Report **************** ESPRIT III PROJECT NB 6756 **************** CAMAS COMPUTER AIDED MIGRATION OF APPLICATIONS SYSTEM

CAMAS-TR Progress Report **************** ESPRIT III PROJECT NB 6756 **************** CAMAS COMPUTER AIDED MIGRATION OF APPLICATIONS SYSTEM CAMAS-TR-2.2.4.2 Progress Report COMMISSION OF THE EUROPEAN COMMUNITIES **************** ESPRIT III PROJECT NB 6756 **************** CAMAS COMPUTER AIDED MIGRATION OF APPLICATIONS SYSTEM ****************

More information

Oracle Database: SQL and PL/SQL Fundamentals Certification Course

Oracle Database: SQL and PL/SQL Fundamentals Certification Course Oracle Database: SQL and PL/SQL Fundamentals Certfcaton Course 1 Duraton: 5 Days (30 hours) What you wll learn: Ths Oracle Database: SQL and PL/SQL Fundamentals tranng delvers the fundamentals of SQL and

More information

Compiling Techniques

Compiling Techniques Lecture 2: The view from 35000 feet 19 September 2017 Table of contents 1 2 Passes Representations 3 Instruction Selection Register Allocation Instruction Scheduling 4 of a compiler Source Compiler Machine

More information

IP Camera Configuration Software Instruction Manual

IP Camera Configuration Software Instruction Manual IP Camera 9483 - Confguraton Software Instructon Manual VBD 612-4 (10.14) Dear Customer, Wth your purchase of ths IP Camera, you have chosen a qualty product manufactured by RADEMACHER. Thank you for the

More information

On Some Entertaining Applications of the Concept of Set in Computer Science Course

On Some Entertaining Applications of the Concept of Set in Computer Science Course On Some Entertanng Applcatons of the Concept of Set n Computer Scence Course Krasmr Yordzhev *, Hrstna Kostadnova ** * Assocate Professor Krasmr Yordzhev, Ph.D., Faculty of Mathematcs and Natural Scences,

More information

Machine Learning. Topic 6: Clustering

Machine Learning. Topic 6: Clustering Machne Learnng Topc 6: lusterng lusterng Groupng data nto (hopefully useful) sets. Thngs on the left Thngs on the rght Applcatons of lusterng Hypothess Generaton lusters mght suggest natural groups. Hypothess

More information

ELEC 377 Operating Systems. Week 6 Class 3

ELEC 377 Operating Systems. Week 6 Class 3 ELEC 377 Operatng Systems Week 6 Class 3 Last Class Memory Management Memory Pagng Pagng Structure ELEC 377 Operatng Systems Today Pagng Szes Vrtual Memory Concept Demand Pagng ELEC 377 Operatng Systems

More information

mquest Quickstart Version 11.0

mquest Quickstart Version 11.0 mquest Quckstart Verson 11.0 cluetec GmbH Emmy-Noether-Straße 17 76131 Karlsruhe Germany www.cluetec.de www.mquest.nfo cluetec GmbH Karlsruhe, 2016 Document verson 5 27.04.2016 16:59 > Propretary notce

More information

COMP 181 Compilers. Administrative. Last time. Prelude. Compilation strategy. Translation strategy. Lecture 2 Overview

COMP 181 Compilers. Administrative. Last time. Prelude. Compilation strategy. Translation strategy. Lecture 2 Overview COMP 181 Compilers Lecture 2 Overview September 7, 2006 Administrative Book? Hopefully: Compilers by Aho, Lam, Sethi, Ullman Mailing list Handouts? Programming assignments For next time, write a hello,

More information

The Ins and Outs of Gradual Type Inference

The Ins and Outs of Gradual Type Inference The Ins and Outs of Gradual Type Inference Aseem Rastog Stony Brook Unversty arastog@cs.stonybrook.edu Avk Chaudhur Basl Hosmer Advanced Technology Labs, Adobe Systems {achaudhu,bhosmer}@adobe.com Abstract

More information

Sorting Review. Sorting. Comparison Sorting. CSE 680 Prof. Roger Crawfis. Assumptions

Sorting Review. Sorting. Comparison Sorting. CSE 680 Prof. Roger Crawfis. Assumptions Sortng Revew Introducton to Algorthms Qucksort CSE 680 Prof. Roger Crawfs Inserton Sort T(n) = Θ(n 2 ) In-place Merge Sort T(n) = Θ(n lg(n)) Not n-place Selecton Sort (from homework) T(n) = Θ(n 2 ) In-place

More information

Writing Evaluators MIF08. Laure Gonnord

Writing Evaluators MIF08. Laure Gonnord Writing Evaluators MIF08 Laure Gonnord Laure.Gonnord@univ-lyon1.fr Evaluators, what for? Outline 1 Evaluators, what for? 2 Implementation Laure Gonnord (Lyon1/FST) Writing Evaluators 2 / 21 Evaluators,

More information

Hermite Splines in Lie Groups as Products of Geodesics

Hermite Splines in Lie Groups as Products of Geodesics Hermte Splnes n Le Groups as Products of Geodescs Ethan Eade Updated May 28, 2017 1 Introducton 1.1 Goal Ths document defnes a curve n the Le group G parametrzed by tme and by structural parameters n the

More information

Parallel matrix-vector multiplication

Parallel matrix-vector multiplication Appendx A Parallel matrx-vector multplcaton The reduced transton matrx of the three-dmensonal cage model for gel electrophoress, descrbed n secton 3.2, becomes excessvely large for polymer lengths more

More information

ON SOME ENTERTAINING APPLICATIONS OF THE CONCEPT OF SET IN COMPUTER SCIENCE COURSE

ON SOME ENTERTAINING APPLICATIONS OF THE CONCEPT OF SET IN COMPUTER SCIENCE COURSE Yordzhev K., Kostadnova H. Інформаційні технології в освіті ON SOME ENTERTAINING APPLICATIONS OF THE CONCEPT OF SET IN COMPUTER SCIENCE COURSE Yordzhev K., Kostadnova H. Some aspects of programmng educaton

More information

Agenda & Reading. Simple If. Decision-Making Statements. COMPSCI 280 S1C Applications Programming. Programming Fundamentals

Agenda & Reading. Simple If. Decision-Making Statements. COMPSCI 280 S1C Applications Programming. Programming Fundamentals Agenda & Readng COMPSCI 8 SC Applcatons Programmng Programmng Fundamentals Control Flow Agenda: Decsonmakng statements: Smple If, Ifelse, nested felse, Select Case s Whle, DoWhle/Untl, For, For Each, Nested

More information

Brave New World Pseudocode Reference

Brave New World Pseudocode Reference Brave New World Pseudocode Reference Pseudocode s a way to descrbe how to accomplsh tasks usng basc steps lke those a computer mght perform. In ths week s lab, you'll see how a form of pseudocode can be

More information

A Binarization Algorithm specialized on Document Images and Photos

A Binarization Algorithm specialized on Document Images and Photos A Bnarzaton Algorthm specalzed on Document mages and Photos Ergna Kavalleratou Dept. of nformaton and Communcaton Systems Engneerng Unversty of the Aegean kavalleratou@aegean.gr Abstract n ths paper, a

More information

Graphical Program Development with PECAN Program Development Systemst

Graphical Program Development with PECAN Program Development Systemst Graphcal Program Development wth PECAN Program Development Systemst Steven P. Ress Department of Computer Scence Brown Unversty Provdence, RI 02912 ABSTRACT Ths paper descrbes the user's vew of the PECAN

More information

OPL: a modelling language

OPL: a modelling language OPL: a modellng language Carlo Mannno (from OPL reference manual) Unversty of Oslo, INF-MAT60 - Autumn 00 (Mathematcal optmzaton) ILOG Optmzaton Programmng Language OPL s an Optmzaton Programmng Language

More information

CHAPTER 4. Applications of Boolean Algebra/ Minterm and Maxterm Expansions

CHAPTER 4. Applications of Boolean Algebra/ Minterm and Maxterm Expansions Fundaentals o Logc Desgn hap. 4 HAPTER 4 /8 Applcatons o Boolean Algebra/ Mnter and Maxter Expansons Ths chapter n the book ncludes: Objectves Study Gude 4. onverson o Englsh Sentences to Boolean Equatons

More information

The Greedy Method. Outline and Reading. Change Money Problem. Greedy Algorithms. Applications of the Greedy Strategy. The Greedy Method Technique

The Greedy Method. Outline and Reading. Change Money Problem. Greedy Algorithms. Applications of the Greedy Strategy. The Greedy Method Technique //00 :0 AM Outlne and Readng The Greedy Method The Greedy Method Technque (secton.) Fractonal Knapsack Problem (secton..) Task Schedulng (secton..) Mnmum Spannng Trees (secton.) Change Money Problem Greedy

More information

COP4020 Programming Languages. Compilers and Interpreters Robert van Engelen & Chris Lacher

COP4020 Programming Languages. Compilers and Interpreters Robert van Engelen & Chris Lacher COP4020 ming Languages Compilers and Interpreters Robert van Engelen & Chris Lacher Overview Common compiler and interpreter configurations Virtual machines Integrated development environments Compiler

More information

Outline. CIS 110: Intro to Computer Programming. What Do Our Programs Look Like? The Scanner Object. CIS 110 (11fa) - University of Pennsylvania 1

Outline. CIS 110: Intro to Computer Programming. What Do Our Programs Look Like? The Scanner Object. CIS 110 (11fa) - University of Pennsylvania 1 Outlne CIS 110: Intro to Computer Programmng The Scanner Object Introducng Condtonal Statements Cumulatve Algorthms Lecture 10 Interacton and Condtonals ( 3.3, 4.1-4.2) 10/15/2011 CIS 110 (11fa) - Unversty

More information

Vectorization in the Polyhedral Model

Vectorization in the Polyhedral Model Vectorzaton n the Polyhedral Model Lous-Noël Pouchet pouchet@cse.oho-state.edu Dept. of Computer Scence and Engneerng, the Oho State Unversty October 200 888. Introducton: Overvew Vectorzaton: Detecton

More information

CS 4240: Compilers and Interpreters Project Phase 1: Scanner and Parser Due Date: October 4 th 2015 (11:59 pm) (via T-square)

CS 4240: Compilers and Interpreters Project Phase 1: Scanner and Parser Due Date: October 4 th 2015 (11:59 pm) (via T-square) CS 4240: Compilers and Interpreters Project Phase 1: Scanner and Parser Due Date: October 4 th 2015 (11:59 pm) (via T-square) Introduction This semester, through a project split into 3 phases, we are going

More information

NUMERICAL SOLVING OPTIMAL CONTROL PROBLEMS BY THE METHOD OF VARIATIONS

NUMERICAL SOLVING OPTIMAL CONTROL PROBLEMS BY THE METHOD OF VARIATIONS ARPN Journal of Engneerng and Appled Scences 006-017 Asan Research Publshng Network (ARPN). All rghts reserved. NUMERICAL SOLVING OPTIMAL CONTROL PROBLEMS BY THE METHOD OF VARIATIONS Igor Grgoryev, Svetlana

More information

Storage Binding in RTL synthesis

Storage Binding in RTL synthesis Storage Bndng n RTL synthess Pe Zhang Danel D. Gajsk Techncal Report ICS-0-37 August 0th, 200 Center for Embedded Computer Systems Department of Informaton and Computer Scence Unersty of Calforna, Irne

More information

Model Integrated Computing: A Framework for Creating Domain Specific Design Environments

Model Integrated Computing: A Framework for Creating Domain Specific Design Environments Model Integrated Computng: A Framework for Creatng Doman Specfc Desgn Envronments James R. DAVIS Vanderblt Unversty, Insttute for Software Integrated Systems Nashvlle, TN 37203, USA ABSTRACT Model Integrated

More information

Performance Evaluation

Performance Evaluation Performance Evaluaton [Ch. ] What s performance? of a car? of a car wash? of a TV? How should we measure the performance of a computer? The response tme (or wall-clock tme) t takes to complete a task?

More information

A RECONFIGURABLE ARCHITECTURE FOR MULTI-GIGABIT SPEED CONTENT-BASED ROUTING. James Moscola, Young H. Cho, John W. Lockwood

A RECONFIGURABLE ARCHITECTURE FOR MULTI-GIGABIT SPEED CONTENT-BASED ROUTING. James Moscola, Young H. Cho, John W. Lockwood A RECONFIGURABLE ARCHITECTURE FOR MULTI-GIGABIT SPEED CONTENT-BASED ROUTING James Moscola, Young H. Cho, John W. Lockwood Dept. of Computer Scence and Engneerng Washngton Unversty, St. Lous, MO {jmm5,

More information

What is a compiler? var a var b mov 3 a mov 4 r1 cmpi a r1 jge l_e mov 2 b jmp l_d l_e: mov 3 b l_d: ;done

What is a compiler? var a var b mov 3 a mov 4 r1 cmpi a r1 jge l_e mov 2 b jmp l_d l_e: mov 3 b l_d: ;done What is a compiler? What is a compiler? Traditionally: Program that analyzes and translates from a high level language (e.g., C++) to low-level assembly language that can be executed by hardware int a,

More information

CSc 520 Principles of Programming Languages

CSc 520 Principles of Programming Languages CSc 520 Principles of Programming Languages 31: Procedures Parameters Christian Collberg collberg@cs.arizona.edu Department of Computer Science University of Arizona Copyright c 2005 Christian Collberg

More information

4/11/17. Agenda. Princeton University Computer Science 217: Introduction to Programming Systems. Goals of this Lecture. Storage Management.

4/11/17. Agenda. Princeton University Computer Science 217: Introduction to Programming Systems. Goals of this Lecture. Storage Management. //7 Prnceton Unversty Computer Scence 7: Introducton to Programmng Systems Goals of ths Lecture Storage Management Help you learn about: Localty and cachng Typcal storage herarchy Vrtual memory How the

More information

The Structure of a Compiler

The Structure of a Compiler The Structure of a Compiler A compiler performs two major tasks: Analysis of the source program being compiled Synthesis of a target program Almost all modern compilers are syntax-directed: The compilation

More information

Installation and User Guide. Digidim Remote Control (303) Product description. Switching Lights On/Off using Digidim 303 Remote

Installation and User Guide. Digidim Remote Control (303) Product description. Switching Lights On/Off using Digidim 303 Remote Installaton and User Gude Dgdm Remote Control (0) Product descrpton The Dgdm Remote (0) can be used n conjuncton wth the Dm Sense to modfy the preset lght levels and recall/ store scenes, as well as actvatng

More information

Today Using Fourier-Motzkin elimination for code generation Using Fourier-Motzkin elimination for determining schedule constraints

Today Using Fourier-Motzkin elimination for code generation Using Fourier-Motzkin elimination for determining schedule constraints Fourer Motzkn Elmnaton Logstcs HW10 due Frday Aprl 27 th Today Usng Fourer-Motzkn elmnaton for code generaton Usng Fourer-Motzkn elmnaton for determnng schedule constrants Unversty Fourer-Motzkn Elmnaton

More information

Chapter 2 Introduction to Query Optimization

Chapter 2 Introduction to Query Optimization 4 Chapter 2 ntroducton to Query Optmzaton 2.1 Query Optmzaton Outlne n ths secton, we wll cover the followng topcs:. 1) Query Processor Components tokenzer, parser, access planner, optmzer, buffer manager

More information

Smoothing Spline ANOVA for variable screening

Smoothing Spline ANOVA for variable screening Smoothng Splne ANOVA for varable screenng a useful tool for metamodels tranng and mult-objectve optmzaton L. Rcco, E. Rgon, A. Turco Outlne RSM Introducton Possble couplng Test case MOO MOO wth Game Theory

More information

CSCI 5417 Information Retrieval Systems Jim Martin!

CSCI 5417 Information Retrieval Systems Jim Martin! CSCI 5417 Informaton Retreval Systems Jm Martn! Lecture 11 9/29/2011 Today 9/29 Classfcaton Naïve Bayes classfcaton Ungram LM 1 Where we are... Bascs of ad hoc retreval Indexng Term weghtng/scorng Cosne

More information

Undergraduate Compilers in a Day

Undergraduate Compilers in a Day Question of the Day Backpatching o.foo(); In Java, the address of foo() is often not known until runtime (due to dynamic class loading), so the method call requires a table lookup. After the first execution

More information

Parallelization of a Series of Extreme Learning Machine Algorithms Based on Spark

Parallelization of a Series of Extreme Learning Machine Algorithms Based on Spark Parallelzaton of a Seres of Extreme Machne Algorthms Based on Spark Tantan Lu, Zhy Fang, Chen Zhao, Yngmn Zhou College of Computer Scence and Technology Jln Unversty, JLU Changchun, Chna e-mal: lutt1992x@sna.com

More information

Modeling and Solving Nontraditional Optimization Problems Session 2a: Conic Constraints

Modeling and Solving Nontraditional Optimization Problems Session 2a: Conic Constraints Modelng and Solvng Nontradtonal Optmzaton Problems Sesson 2a: Conc Constrants Robert Fourer Industral Engneerng & Management Scences Northwestern Unversty AMPL Optmzaton LLC 4er@northwestern.edu 4er@ampl.com

More information

WCET-Directed Dynamic Scratchpad Memory Allocation of Data

WCET-Directed Dynamic Scratchpad Memory Allocation of Data WCET-Drected Dynamc Scratchpad Memory Allocaton of Data Jean-Franços Deverge and Isabelle Puaut Unversté Européenne de Bretagne / IRISA, Rennes, France Abstract Many embedded systems feature processors

More information