Video Bonus (1%)
Many people in the programming languages research community strive to make their talks accessible to people who are new to the field. I chose a few such videos to give you a sense of what (some) people who work in this field are excited about.
If you decide to participate in this bonus assignment, you'll need to:
- Watch one of the videos. (You're welcome to watch more than one, since these are all really interesting talks!)
- Write a paragraph describing what video you watched, what it was about, and what your thoughts were.
- Submit your writeup as a PDF file called "bonus.pdf" on Markus.
Video 1: On the Expressive Power of Programming Languages (2019)
Link: https://www.youtube.com/watch?v=43XaZEn2aLc
We discussed the Church-Turing thesis in the first lecture. But if all Turing-complete language have the same computational power, then how can we compare the expressiveness of different languages?
Video 2: Four Languages from Forty Years Ago (2018)
Link: https://www.youtube.com/watch?v=0fpDlAEQio4
This talk is a gentle introduction to the "big ideas" in programming languages, including logic programming, algebraic data types, and others.
Video 3: "I See What You Mean" (2015)
Link: https://www.youtube.com/watch?v=R2Aa4PivG0g
This talk is about the connection between logic programming and Structured Query Language, but continues the discussion by adding the notion of time.
Video 4: Barliman: trying the halting problem backwards, blindfolded (2016)
Link: https://www.youtube.com/watch?v=er_lLvkklsk&feature=youtu.be&t=95
This talk is about using a version of logic programming to automatically generate programs. (If are doing well in this course, and want to work on something like this, talk to me!)
Video 5: A Unified Approach to Solving Seven Programming Problems (2017)
Link: https://www.youtube.com/watch?v=o3AHnyEf7IE
This talk is similar in spirit to choice 3, and uses relational interpreters to solve a variety of problems.
Video 6: Functional Core Imperative Shell (2012)
Link: https://www.destroyallsoftware.com/screencasts/catalog/functional-core-imperative-shell
This video is a little old, but the ideas are still relevant even if the technology isn't. This talk is the most "industry focused" out of the list of talks.