CS 245 Lecture 23 – Tree Edits and Traversals
Agenda what ?s the uses of trees think about this adding elements removing elements traversing TODO Start preassignment 3. Due before May 9. Think About This What is printed by the following code? What’s printed if we replace Stack with Queue, push with enqueue, and pop with dequeue? Code BinarySearchTree.java BSTBFF.java Haiku
CS 330 Lecture 33 – Map, Fold, Filter, Lambdas
Agenda what ?s program this three patterns for-each combine filter anonymous functions TODO Read chapter 6 in Learn You a Haskell (http://learnyouahaskell.com/higher-order-functions). 1/4 sheet. Program This Code april21.hs Haiku
CS 330 Lecture 32 – Type Inference, Functions, and Lists
Agenda what ?s type interference in other languages type signatures curried functions infinite lists list processing case statements pattern matching map lambda Think About This Code april18.hs Haiku
CS 245 Lecture 22 – Stacks and Binary Search Tree
Agenda what ?s the purpose of stacks and queues a postfix expression calculator binary search tree TODO Watch a random YouTube video on stacks and queues. Read about Java’s Stack badness. Read about using stacks and queues for time management. 1/4 sheet. Design This Program This Code BinarySearchTree.java Haiku
CS 330 Lecture 31 – On to Haskell
Agenda what ?s concerns about languages: speed of execution ease of development program correctness think about this the functional paradigm Haskell lists and strings ranges head, cons, tail initials sum add1/abs/threshold for-each pattern, map higher order functions TODO Read chapters 1 and 2 of Learn You a Haskell. 1/4 sheet. Think About This Code april16.hs Haiku
CS 245 Lecture 21 – Linked List, Stack, and Queue
Agenda what ?s why are we here? finishing up linked list and Snake stacks and queues a postfix calculator an HTML validator Program This Program This Code HashSet.java LinkedList.java SnakesOnAFrame.java Stack.java Valhalla.java Haiku
CS 330 Lecture 30 – Logo Translation
Agenda what ?s writing a translator for Logo think about this TODO Extra credit 1/4 sheet: Write a Logo program to demo in class. Download the Eclipse project. In Compiler.java, change the file name to point to your file, or use the JFileChooser. To receive credit, post the Logo source in the comments. Think About […]
CS 330 Lecture 29 – Modeling a Program
Agenda what ?s model this a model for Logo Model This Code Block.java Command.java CommandListener.java CommandMove.java CommandRotate.java Environment.java Expression.java ExpressionLiteral.java LogoVirtualMachine.java Haiku
CS 330 Lecture 28 – Interpreting
Agenda what ?s a REPL walking a parse tree with ANTLR’s callbacks TODO Start Bifur. Code makefile Note to copy and pasters: makefile rules need to be indented with real tabs, not spaces. Basecalc.g InterpreterBasecalc.java Haiku
CS 245 Lecture 20 – Linked List
Agenda what ?s a linked list a linked snake TODO Grab an updated specchecker HW3. Stay home Thursday. No lab Monday just ‘cuz. You’ve worked hard. Code LinkedList.java Haiku