Schedule, Readings, and Assignments

Reading Assignments should be COMPLETED before class time on the date given.

Date Topic Assignments
Wed  Jan 17 Introduction to Functional Programming
  The Future is Parallel
Reading: Can Programming be Liberated...?
(through section 10)
Daily #0 - Due Jan 24
Mon  Jan 22 Models of Computation and Programming Languages
 Roots of Lisp / John McCarthy Obituary
Daily #1 - Due Jan 24
Wed  Jan 24 Elixir: Pattern Matching - Lab Reading: Elixir, Ch. 2
Daily #2 - Due Jan 29
Mon  Jan 29 Elixir: Immutability and Basic Types
 What Is Immutable?
Reading: Elixir, Ch. 3
Daily #3 - Due Jan 31

Wed  Jan 31 Elixir: Advanced Types and Functions - Lab Reading: Elixir, Ch. 4 and 5
Daily #4 - Due Feb 5
Mon  Feb 05 Modularity and Program Design
 Specs (dialyzer 1, dialyzer 2)
Reading: Elixir , Ch. 6
Daily #5 - Due Feb 7
Wed  Feb 07 Lists and Structural Recursion Reading: Elixir, Ch. 7
HW 1- Due Feb 14
Mon  Feb 12
More Lists, More Recursion Reading: Elixir, Ch. 8
Wed  Feb 14 Higher-Order Functions Reading: Elixir, Ch. 9 and 10
HW 2 - Due Feb 21
Mon  Feb 19
Lazy Streams - Lab
  Using :io.format
Reading: Elixir, Ch. 10 and 12
Wed  Feb 21
Research Meeting in Baltimore - no Class
Reading: Elixir, Ch. 13
Mon  Feb 26
Using Mix - Lab Reading: Elixir, Ch. 13
HW 3 - Due Mar 05
Wed  Feb 28
Lazy Streams / Github Issues
  Best in Class
Reading: Elixir, Ch. 14
Mon  Mar 05
ExUnit / Exam Review
 Exam 1 Review and Solutions
Take-home Exam out 
Due: Monday Mar 12
Wed  Mar 07
Processes / Concurrent Programming - Lab Rackspace Interview
Reading: Armstrong, Ch. 11
Mon  Mar 12
Connecting to Webservices (Tentative)

Wed  Mar 14
FRIDAY SCHEDULE No Class
Mon  Mar 19
Spring Break No Class
Wed  Mar 21
Spring Break No Class
Mon  Mar 26 Concurrency Primitives - Lab
  Examples: one system, two systems
Reading: Elixir, Ch. 15
Wed  Mar 28 Concurrency Primitives II
  @joearmstrong on Systems
HW 4 - Due Apr 04
Mon  Apr 02 Concurrency Models Reading: Elixir, Ch. 16
Wed  Apr 04 Agents
Reading: Elixir, Ch. 20
Mon  Apr 09 Agents and Tasks - Lab Reading: Elixir, Ch. 17-19
HW 5
- Due Apr 16
Wed  Apr 11 GenServer - Lab
.
Mon  Apr 16 Distributed Computation: Nodes - Lab 6 Reading: Elixir, Ch. 20
HW 6  - Due Apr 23
Wed  Apr 18 Distributed Computation: Sockets - Lab 7 Paper/Presentation - Due last "week" of class
Mon  Apr 23 Macros / Protocols - Lab 8 Reading: Elixir, Ch. 21+23
Wed  Apr 25 Exam 2 Presentation Advice
Fri  Apr 27
Scholarship Sewanee .
Mon  Apr 30
Paper Presentations .
Wed  May 02
Paper Presentations / Wrap-up Final Review
Sat
 May 05 Final Exam, 7:00 PM .
Related

Elixir Conf Opening Keynote:Think Different
from confreaks on YouTube.


View from the ISS at Night from Knate Myers on Vimeo


Stephen P. Carl
scarl AT sewanee DOT edu