CS 330 Lecture 6 – Hardware Pushing
Agenda imperative programming assigning and mutating variables conditionals and loops von Neumann a few hardware functions assembly code disk to RAM to registers returning a result to the shell compiling debugging with gdb adding two numbers printf quadrupling cmp and jmp a coin tosser a for loop TODO Read pages 22-33 of Programming from the […]
CS 330 Lecture 5 – Advanced Regex
Agenda instatiating alternation anchors (^ $ \b) another kind: zero-width assertions executing code in the substitution TODO Read chapters 1-3 of Programming From the Ground Up, stopping before the Finding a Maximum Value section (page 21 in the letter-size edition.) Code states.txt instatiate.rb showext.rb State.java javadocify.rb foo.txt eval.rb Haiku
CS 455 Lecture 4 – 2-D Transformations
Before class Scaling, Translation, and Shear Watch http://youtu.be/Vfs7eOjcKuo. (I misspeak at one point: only translation and rotation are rigid-body transforms.) Read about transforms for a different graphics API at http://processing.org/learning/transform2d/, stopping before The Transformation Matrix. Rotation Watch http://youtu.be/qKgYarnLT94. Another brief perspective: http://www.siggraph.org/education/materials/HyperGraph/modeling/mod_tran/2drota.htm. For the inclined, read the sin and cosine summation section of http://oakroadsystems.com/twt/sumdiff.htm. In class First, here’s a fix […]
CS 330 Lecture 4 – State Machines and Regular Expressions
Agenda State machines: states, transitions, accepting states A machine to recognize parenthesized words A machine to recognize numbers A possible implementation Regular expressions as state machine encoding Not much Ruby Composing a string of email addresses Removing all HTML Instantiating states (geographic ones) TODO If we want more on regex, read pages 257-269 of Read […]
CS 455 Lecture 3 – Color, Uniforms, and Geometry
Before class Color and Uniforms Watch http://youtu.be/Jqrdxucra7w. Read http://www.catb.org/jargon/html/L/LERP.html. Read http://en.wikipedia.org/wiki/Linear_interpolation. Geometry Watch http://youtu.be/KkrBwHbjsB8. Read section 2.1 of http://www.informit.com/articles/article.aspx?p=461848. (Consider QUAD and POLYGON are deprecated.) Read http://stackoverflow.com/questions/2954349/when-should-i-use-indexed-arrays-of-opengl-vertices. In class Make sure your renderer from last time is working. Generate a flat ring (a circle with a smaller concentric circle punched out)without repeating any position attributes. Add a color attribute at each […]
CS 330 Lecture 3 – $h3||
Agenda quarter sheets tr echoing a line (in Java) system call (PHP and sed) tcsh vs. bash vs. zsh vs. intellectual development subshells in parentheses vs. curly braces question numbered parameters environment variables redirection and pipes lineN with grep new mail spamming you all what’s the frequency of kenneth? TODO Read http://www.regular-expressions.info/quickstart.html. Bring a quarter sheet […]
CS 330 Homework 4 – Regexercise
See the PDF. For the purposes of this assignment, you will need Ruby 1.9.*. On thing-[012], only Ruby 1.8.7 is available. Thankfully, Dr. Bui is allowing us the use of one of his machines. Instead of sshing into thing-[012], use dplsubmit.cs.uwec.edu. Just like the thingies, you will need a VPN connection first. However, that’s not […]
CS 330 Homework 3 – JSONograph
See the PDF.
CS 330 Homework 2 – Trois Voix
See the PDF. I used https://ccrma.stanford.edu/courses/422/projects/WaveFormat/ when trying to understand the WAV protocol. You may find others helpful—post links in the comments.
CS 330 Homework 1 – Freql
See the PDF.