Programming Paradigms
by Jerry Cain
To listen to an audio podcast, mouse over the title and click Play. Open iTunes to download and subscribe to iTunes U collections.
Description
Advanced memory management features of C and C++; the differences between imperative and object-oriented paradigms. The functional paradigm (using LISP) and concurrent programming (using C and C++). Brief survey of other modern languages such as Python, Objective C, and C#. Prerequisites: Programming and problem solving at the Programming Abstractions level. Prospective students should know a reasonable amount of C++. You should be comfortable with arrays, pointers, references, classes, methods, dynamic memory allocation, recursion, linked lists, binary search trees, hashing, iterators, and function pointers. You should be able to write well-decomposed, easy-to-understand code, and understand the value that comes with good variable names, short function and method implementations, and thoughtful, articulate comments.
| Name | Description | Released | Price | ||
|---|---|---|---|---|---|
| 1 | Video1. Programming Paradigms Lecture 1 | science, math, engineering, computer, language, source, code, technology, programming, functional, paradigm, concurrent, programming, C++, scheme, python, assembly, web, internet | 7/22/08 | Free | View In iTunes |
| 2 | Video2. Programming Paradigms Lecture 2 | science, math, engineering, computer, language, source, code, technology, programming, paradigm, C, C++, byte, bit, pattern, binary, addition, subtraction, digit, number, character, two's complement | 7/22/08 | Free | View In iTunes |
| 3 | Video3. Programming Paradigms Lecture 3 | science, math, engineering, computer, language, source, code, technology, programming, paradigm, C, C++, bit, byte, pi, array, struct, address, string, duplicate, copy, activation record, memory, diagram | 7/22/08 | Free | View In iTunes |
| 4 | Video4. Programming Paradigms Lecture 4 | science, math, engineering, computer, language, source, code, technology, programming, paradigm, C, C++, bit, pattern, byte, compiler, memory, copy, character, template, void, swap, crash, linear search | 7/22/08 | Free | View In iTunes |
| 5 | Video5. Programming Paradigms Lecture 5 | science, math, engineering, computer, language, source, code, technology, programming, paradigm, C, C++, bit, byte, linear, search, stack, comparison, function, character, star, string, array, integer, binary | 7/22/08 | Free | View In iTunes |
| 6 | Video6. Programming Paradigms Lecture 6 | science, math, engineering, computer, language, source code, technology, programming, paradigm, C, C++, bit, byte, stack, malloc, realloc, memory, pointer, address, return, character, star, static void | 7/22/08 | Free | View In iTunes |
| 7 | Video7. Programming Paradigms Lecture 7 | science, math, engineering, computer, language, source code, technology, programming, paradigm, C, C++, bit, byte, generic, string, stack, character, star, copy, asterisk, ampersand, compiler, rotate | 7/22/08 | Free | View In iTunes |
| 8 | Video8. Programming Paradigms Lecture 8 | science, math, engineering, computer, language, source code, technology, programming, paradigm, C, C++, bit, byte, heap, segment, malloc, realloc, free, pointer, address, processor, register | 7/22/08 | Free | View In iTunes |
| 9 | Video9. Programming Paradigms Lecture 9 | science, math, engineering, computer, language, source code, technology, programming, paradigm, C, C++, bit, byte, assembly, store operation, load, arithmetic logic unit, array, function call, register, branch, jump, instruction | 7/22/08 | Free | View In iTunes |
| 10 | Video10. Programming Paradigms Lecture 10 | science, math, engineering, computer, language, source code, technology, programming, paradigm, C, C++, bit, byte, architecture, activation, record, function, call, return, value, foo, assembly, recursive | 7/22/08 | Free | View In iTunes |
| 11 | Video11. Programming Paradigms Lecture 11 | science, math, engineering, computer, language, source code, technology, programming, paradigm, C, C++, bit, byte, architecture, assembly, swap, saved PC, stack, pointer, call, return, function, referen | 7/22/08 | Free | View In iTunes |
| 12 | Video12. Programming Paradigms Lecture 12 | science, math, engineering, computer, language, source code, technology, programming, paradigm, C, C++, bit, byte, pre-processor, compilation, linking, call, return, macro, fibonacci, GCC, memor | 7/22/08 | Free | View In iTunes |
| 13 | Video13. Programming Paradigms Lecture 13 | science, math, engineering, computer, language, source code, technology, programming, paradigm, C, C++, bit, byte, compilation, linking, GCC, function, system, segmentation fault, bus error, dereferenc | 7/22/08 | Free | View In iTunes |
| 14 | Video14. Programming Paradigms Lecture 14 | science, math, engineering, computer, language, source code, technology, programming, paradigm, C, C++, bit, byte, compiler, control, string, struct, address, stack, segment, GCC, application, processor | 7/22/08 | Free | View In iTunes |
| 15 | Video15. Programming Paradigms Lecture 15 | science, math, engineering, computer, language, source code, technology, programming, paradigm, C, C++, bit, byte, thread, library, function, while loop, call, run, instruction, stack, segment | 7/22/08 | Free | View In iTunes |
| 16 | Video16. Programming Paradigms Lecture 16 | science, math, engineering, computer, language, source code, technology, programming, paradigm, C, C++, bit, byte, thread, library, function, semaphore, processor, dining philosopher, example | 7/22/08 | Free | View In iTunes |
| 17 | Video17. Programming Paradigms Lecture 17 | science, math, engineering, computer, language, source code, technology, programming, paradigm, C, C++, bit, byte, synchronization directive, thread, library, deadlock, FTP, download | 7/22/08 | Free | View In iTunes |
| 18 | Video18. Programming Paradigms Lecture 18 | science, math, engineering, computer, language, source code, technology, programming, paradigm, C, C++, bit, byte, synchronization directive, thread, semaphore, struct, signal | 7/22/08 | Free | View In iTunes |
| 19 | Video19. Programming Paradigms Lecture 19 | science, math, engineering, computer, language, source code, technology, programming, scheme, paradigm, assembly, functional, return value, threading, kawa, compile, evaluate | 7/22/08 | Free | View In iTunes |
| 20 | Video20. Programming Paradigms Lecture 20 | science, math, engineering, computer, language, source code, technology, programming, scheme, functional, paradigm, iteration, recursion, call, run-time, script, flatten, empty list, condition, pointer | 7/22/08 | Free | View In iTunes |
| 21 | Video21. Programming Paradigms Lecture 21 | science, math, engineering, computer, language, source code, technology, programming, scheme, functional, paradigm, iteration, recursion, run-time, development, pointer, apply, eval, map | 7/22/08 | Free | View In iTunes |
| 22 | Video22. Programming Paradigms Lecture 22 | science, math, engineering, computer, language, source code, technology, programming, scheme, functional, paradigm, recursion, discrete, lambda, power set, let binding | 7/22/08 | Free | View In iTunes |
| 23 | Video23. Programming Paradigms Lecture 23 | science, math, engineering, computer, language, source code, technology, programming, scheme, functional, paradigm, recursion, memory model, unary map, function | 7/22/08 | Free | View In iTunes |
| 24 | Video24. Programming Paradigms Lecture 24 | science, math, engineering, computer, language, source code, technology, programming, python, imperative, object oriented, functional, procedural, shell script | 7/22/08 | Free | View In iTunes |
| 25 | Video25. Programming Paradigms Lecture 25 | science, math, engineering, computer, language, source code, technology, programming, python, imperative, object oriented, functional, recursion, dictionary, syntax layer, shell script | 7/22/08 | Free | View In iTunes |
| 26 | Video26. Programming Paradigms Lecture 26 | science, math, engineering, computer, language, source code, technology, programming, python, imperative, object oriented, functional, xml, processing, internet, content handler, url, html, node | 7/22/08 | Free | View In iTunes |
| 27 | Video27. Programming Paradigms Lecture 27 | science, math, engineering, computer, language, source code, technology, programming, python, haskell, sasha rush, facebook, ML, meta-language, imperative, functional, fibonacci, compile | 7/22/08 | Free | View In iTunes |
| Total: 27 Episodes |
Customer Reviews
Great lectures
I watched a good number of these lectures. They are amazing . In depth discussion on pointers ,function call convention, code generation and many other fund low level and arch related topics. Thanks to all those who made them available.
Great teacher
This professor is excellent at expressing some complicated ideas in easy to understand ways. After five "episodes" there is not a thing I don't understand. No idea what's the one and two star ratings are looking for, this is exactly what a PLP course should cover.
Very enjoyable lectures
I am about 10 lectures in and I appreciate this series. The first few lectures were a helpful way to reestablish my fundamentals. I found the section that implemented a stack in C to be a bit long-winded, but immediately after I enjoyed the discussion of the heap. I will update if I have any more comments, but overall have enjoyed the lectures, the speaker, and the examples.











