Logo courtesy Wordle.net
[S'21 Online Information] [Basic Information] [Announcements] [Calendar/Assignments] [Links]
Welcome to CS 4100, Programming Languages
Course Description
This course
will introduce you to the principles of the design, evaluation,
and implementation of computer programming languages. As such it
is not a crash course to teach you to program in a half dozen
new dialects, although you will find learning new languages
easier as a result of this study. Our emphasis will be on the
kinds of features languages might have, how they influence a
programmer's thought process, and how they may be implemented on
a computer.
At
this level of study, we will find that complex tradeoffs between
language principles coupled with a variety of differing goals
often can lead designers to radically different design
decisions. There seems to be no single "right" way to design a
programming language, no single language that is "right" for all
applications. You will be asked to explore some of these
tradeoffs through a series of writing assignments in which your
thought process and ability to balance fairly many aspects of
complex issues will often be more important than the conclusions
you reach. Because of this subject matter and pedagogical
approach, this course meets the University graduation
requirement for Writing Proficiency, and you will need to have
passed the University Writing Proficiency Screening Test before
enrolling.
(The above paragraphs are from Dr. Ray Zarling's CS 4100 course description, with permission.)
Announcements and Upcoming Events
11 May 2021 | More writing advice I noted down while looking at drafts. |
4 May 2021 |
"4 strategies for managing your job search anxiety" (Fast Company, 4 May 2021)
"Systems Engineer, Web App Developer: Best Entry-Level Jobs in Tech?" (Dice.com, 27 April 2021) |
27 Apr 2021 |
At least once in the days between 4/27 and 5/8, write an entry in your Assignment 1 journal that responds to this prompt:
Write about one strength that you have.
Suggestions (new list) for strengths you could write about: I follow through on my commitments. I am dependable. I am self-aware. I have overcome hardship. I help other people when I can. I advocate for others. I take care of my health. I keep going, at least most of the time!I am creative. I can adapt to change. I have hobbies. (Most of list courtesy K. Oehme, Florida State U) |
20 April 2021 | "The 10 Best States For Tech Job Openings", CRN.com, 15 Apr 2021. |
16 April 2021 |
Regarding today's discussion of plagiarism, I ran across a couple of recent news items on related topics. "Journal of the paranormal has its first retraction" (Retraction Watch, March 2021). A journal willing to publish "scientific" papers (sarcasm quotation marks) on seances, reincarnation, and so on, but plagiarized papers? Nope, that's too much for them. "Publisher retracting five papers because of "clear evidence" that they were "computer generated"" (Retraction Watch, Feb 2021). Remember the not-a-scientific-paper we looked at a few months ago? Evidently some not-very-careful publishers were fooled by similar papers... |
12 April 2021 | Writing advice I noted down while looking at mini-drafts. |
2 April 2021 | "9 Programming Languages That Employers Want and Pay High Salaries," 31 March 2021, dice.com |
2 April 2021 | Here is the midterm. A blank MSWord (DOCX) document is here and a blank MSWord (DOC) document is here if you want to use them. When you are done with the midterm, upload your work to the CS Homework site. (Password for midterm and blank document is the same as the lecture slide password.) Due at end of class time today (4:10 pm Friday). (Extended due to chat at start of class.) |
1 April 2021 |
Midterm Quiz will be available in Canvas today (Thursday) and will stay
available until Saturday at 1 pm. This is part of your midterm -- take it!
(one attempt only, 30 minutes, 4 questions) Also, don't forget to try the Practice Midterm Quiz (also in Canvas, but multiple attempts are ok for practice) before you take the Midterm Quiz. (The practice quiz is only available until Thursday midnight.) |
31 Mar 2021 | "ACM Turing Award Honors Innovators Who Shaped the Foundations of Programming Language Compilers and Algorithms: Columbia's Aho and Stanford's Ullman Developed Tools and Fundamental Textbooks Used by Millions of Software Programmers around the World," ACM, March 2021. |
16 Mar 2021 |
At least once in the days between 3/17 and 3/24, write an entry in your Assignment 1 journal that responds to this prompt:
Write about one strength that you have.
Suggestions for strengths you could write about: I am a good team member. I learn from my mistakes. I am an effective leader. I am able to do meaningful research. I am always learning how to be a better student. I help move projects forward. I am skilled at public speaking. I am empathetic towards others. I am a source of good energy. (Most of list courtesy K. Oehme, Florida State U) |
26 Feb 2021 | "LinkedIn: Top 15 In-Demand Jobs in 2021", 14 Jan 2021. (Scroll down. Keep scrolling.) |
17 Feb 2021 | FYI, Perseverance is to land (or not) on Mars tomorrow, the 18th, shortly before 1pm PST. NASA will start live streaming stuff about an hour or two beforehand. (Here, if you're interested. https://www.youtube.com/watch?v=gm0b_ijaYMQ&ab_channel=NASA) |
29 Jan 2021 | Recommended take-out restaurants and recipes. My apologies for the iffy
spelling; I was working off the sounds I heard. mod pizza; mikasa, lathrop; li shu's chinese, patterson; in and out; gold dust pizza, oakdale; wing stop; crawfish and grill, modesto; ming's chinese, modesto; burger time, merced; fumi sushi, modesto; starbucks; east chinatown, modesto; happy pizza, manteca; food fix, modesto; taco shop on monte viste; mcdonald's; Ramen VS pho, fresno; daal; pho; Lozas in turlock; Raising Caines, below bakerfield; Chong's Cuisine by foodmaxx; el asadero bonus, merced; mountain mike's; pinocchios, sonora; la mornitas, turlock; domino's |
29 Jan 2021 | Welcome to CS 4100! |
Canvas Learning Management System, where some class activities, quizzes, and final paper submission to Turnitin.com will be done.
Document scanning apps for smartphones that past students have recommended: CamScanner, Genius Scan, Adobe Scan. (Note that the professor doesn't care if the apps leave watermarks on your scans, as long as the documents are readable.)
Textbook is Principles
of Programming Languages: Design, Evaluation, and Implementation
(Third Edition), by Bruce J. MacLennan
Instructor: Dr. Megan Thomas
Office: Demergasso-Bava Hall 279
Email: mthomas@cs.csustan.edu
Web Page: www.cs.csustan.edu/~mthomas
Best way to contact Dr. Thomas:
Email mthomas@cs.csustan.edu Please put "CS4100" in the subject
line of the email.
Prerequisite: Completion
of the "Golden Four" lower division GE courses, and
CS 3100.
Warning: I reserve the right to make changes to the
syllabus at any time during the term by announcing them in class
and on my web page.
Projects and Assignments |
30% |
Midterm Exam | 15% |
Term Project | 30% |
Final Exam | 20% |
Participation | 5% |
Total | 100% |
The recordings are only for use of students in Spring 2021 CS 4100, and should not be shared with anyone outside the class.
The Writing Center website is located at http://www.csustan.edu/writingcenter/
Phone: Writing Center: (209) 667-3465
Email: writingcenter@csustan.edu
Computer Science & Information Systems from the CSU Stanislaus Library
Lecture Extra Information
(The contents of this web page are borrowed liberally from Dr. Melanie Martin's CS 4100 course description, with permission.)