<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://www.cs.vassar.edu/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://www.cs.vassar.edu/feed.php">
        <title>Computer Science | Vassar College</title>
        <description></description>
        <link>https://www.cs.vassar.edu/</link>
        <image rdf:resource="https://www.cs.vassar.edu/_media/favicon.ico" />
       <dc:date>2026-04-12T13:41:15+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://www.cs.vassar.edu/courses/cs377-202651/lang-resources?rev=1768974887&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.cs.vassar.edu/courses/cs377-202651/tech_ref?rev=1768975208&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.cs.vassar.edu/courses/cs377-202651/top?rev=1769111512&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.cs.vassar.edu/courses/cs377-202651/vim_resources?rev=1768975139&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.cs.vassar.edu/courses/cs377-202651/week1?rev=1769109794&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.cs.vassar.edu/courses/cs377-202651/week2?rev=1769713421&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.cs.vassar.edu/courses/cs377-202651/week3?rev=1770259758&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.cs.vassar.edu/courses/cs377-202651/week4?rev=1770753056&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.cs.vassar.edu/courses/cs377-202651/week5?rev=1771530623&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.cs.vassar.edu/courses/cs377-202651/week6?rev=1772136451&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.cs.vassar.edu/courses/cs377-202651/week7?rev=1772739902&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.cs.vassar.edu/courses/cs377-202651/week8?rev=1774551687&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.cs.vassar.edu/courses/cs377-202651/week9?rev=1775157381&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.cs.vassar.edu/courses/cs377-202651/week10?rev=1775761062&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://www.cs.vassar.edu/_media/favicon.ico">
        <title>Computer Science | Vassar College</title>
        <link>https://www.cs.vassar.edu/</link>
        <url>https://www.cs.vassar.edu/_media/favicon.ico</url>
    </image>
    <item rdf:about="https://www.cs.vassar.edu/courses/cs377-202651/lang-resources?rev=1768974887&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-01-21T05:54:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>lang-resources</title>
        <link>https://www.cs.vassar.edu/courses/cs377-202651/lang-resources?rev=1768974887&amp;do=diff</link>
        <description>Language Resources



Unified Parallel C (UPC)

	*  Berkeley UPC: &lt;http://upc.lbl.gov/&gt; 

Communicating Sequential Processes (CSP)

	*  Hoare's original 1978 CACM paper
	*  The classic CSP text: [Communicating Sequential Processes (Hoare)]
	*  The modern CSP text: The Theory and Practice of Concurrency (Roscoe)
	*  occam 
		*  Professor Peter Welch's occam tutorial slides and 
		*  FAQs from his course at the University of Kent</description>
    </item>
    <item rdf:about="https://www.cs.vassar.edu/courses/cs377-202651/tech_ref?rev=1768975208&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-01-21T06:00:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>tech_ref</title>
        <link>https://www.cs.vassar.edu/courses/cs377-202651/tech_ref?rev=1768975208&amp;do=diff</link>
        <description>Tech Ref



Electronic Submission

You should make a cs377 directory under your home directory on your CS account, and protect it:
$ cd
$ mkdir cs377
$ chmod 700 cs377

Your programming assignments should each be saved in a subdirectory named cs377. This makes it easy to use the submit377 script for each individual assignment, as well as keeps your assignments organized.</description>
    </item>
    <item rdf:about="https://www.cs.vassar.edu/courses/cs377-202651/top?rev=1769111512&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-01-22T19:51:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>top</title>
        <link>https://www.cs.vassar.edu/courses/cs377-202651/top?rev=1769111512&amp;do=diff</link>
        <description>Parallel Programming


 CMPU-377 
Vassar College, Spring 2026 
Syllabus / Course Wiki 


  
----------

 Welcome to our course wiki. It will be updated throughout the semester with important course information, so check here regularly. 

Contact Information</description>
    </item>
    <item rdf:about="https://www.cs.vassar.edu/courses/cs377-202651/vim_resources?rev=1768975139&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-01-21T05:58:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>vim_resources</title>
        <link>https://www.cs.vassar.edu/courses/cs377-202651/vim_resources?rev=1768975139&amp;do=diff</link>
        <description>Vim Resources



One of the goals this semester is to learn to use Vim: a real text (and programmer's) editor.
Here are some resources to help you get started.

	*  Vim Wikipedia article
	*  use vimtutor command from the linux prompt to learn basic Vim navigation, modes, and more</description>
    </item>
    <item rdf:about="https://www.cs.vassar.edu/courses/cs377-202651/week1?rev=1769109794&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-01-22T19:23:14+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>week1</title>
        <link>https://www.cs.vassar.edu/courses/cs377-202651/week1?rev=1769109794&amp;do=diff</link>
        <description>Week 1



	*  Introductions
	*  Course overview (syllabus)

Lecture Notes

	*  Lecture notes: [PDF]
		*  A familiar problem: findMax

	*  Challenge: O(1) parallel max?
		*  it can be done! 
		*  with the right assumptions, processors, and disregard for efficiency!</description>
    </item>
    <item rdf:about="https://www.cs.vassar.edu/courses/cs377-202651/week2?rev=1769713421&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-01-29T19:03:41+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>week2</title>
        <link>https://www.cs.vassar.edu/courses/cs377-202651/week2?rev=1769713421&amp;do=diff</link>
        <description>Week 2



	*  Readings for this week and next (from text): 
		*  Ben-Ari Ch 1: What is Concurrent Programming?
		*  Ben-Ari Ch 2: The Concurrent Programming Abstraction


Discussion and Lecture Notes

	*  Assignment 1
		*  Due: Thu, Jan 29, 11:59pm
		* $n^2$</description>
    </item>
    <item rdf:about="https://www.cs.vassar.edu/courses/cs377-202651/week3?rev=1770259758&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-02-05T02:49:18+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>week3</title>
        <link>https://www.cs.vassar.edu/courses/cs377-202651/week3?rev=1770259758&amp;do=diff</link>
        <description>Week 3



Lecture Notes

	*  Ben-Ari Ch's 1 and 2
		*  Ben-Ari slides: [PDF]
		*  Formula (number of possible interleavings):
			*  # interleavings = $\Large \frac{(nk)!} {(k!)^n}$ 
			*  where n = # processes and k = # steps / process
			*  assumes all n processes have same number of steps (k)</description>
    </item>
    <item rdf:about="https://www.cs.vassar.edu/courses/cs377-202651/week4?rev=1770753056&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-02-10T19:50:56+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>week4</title>
        <link>https://www.cs.vassar.edu/courses/cs377-202651/week4?rev=1770753056&amp;do=diff</link>
        <description>Week 4



Lecture Notes

Critical Sections

	*  Recap from last week:
		*  UPC setup, including ssh keys and script to compile/run
		*  Finish up demo of last two versions of UPC temperature programs
		*  vim questions? tips/advice?
		*  Programming assignment 2 due: next Tue, Feb 17</description>
    </item>
    <item rdf:about="https://www.cs.vassar.edu/courses/cs377-202651/week5?rev=1771530623&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-02-19T19:50:23+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>week5</title>
        <link>https://www.cs.vassar.edu/courses/cs377-202651/week5?rev=1771530623&amp;do=diff</link>
        <description>Week 5



Programming Assignment 2

	*  UPC Exercises 1.1 through 1.7
	*  Due: Tue, Feb 17, 11:59pm (tonight!)
	*  Here's a link: private

Lecture Notes

Semaphores

	*  Introduced by Edsger Dijkstra in the mid-1960s

	*  Ben-Ari Ch 6
		*  slides: [PDF]
			*  begin slide 6.1, p. 105</description>
    </item>
    <item rdf:about="https://www.cs.vassar.edu/courses/cs377-202651/week6?rev=1772136451&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-02-26T20:07:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>week6</title>
        <link>https://www.cs.vassar.edu/courses/cs377-202651/week6?rev=1772136451&amp;do=diff</link>
        <description>Week 6



Lecture Notes

Semaphores

	*  Ben-Ari Ch 6
		*  slides: [PDF]
			*  begin: Dining Philosophers



	*  Code walk: Dining UPC Philosophers
		*  Version 1: busy waiting with upc_lock_attempt()
		*  Version 2: deadlocking with upc_lock()


 Class exercise</description>
    </item>
    <item rdf:about="https://www.cs.vassar.edu/courses/cs377-202651/week7?rev=1772739902&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-05T19:45:02+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>week7</title>
        <link>https://www.cs.vassar.edu/courses/cs377-202651/week7?rev=1772739902&amp;do=diff</link>
        <description>Week 7



From Semaphores to Monitors

Monitors

	*  Marc's Lecture Notes: [PDF]
	*  Ben-Ari Ch 7
		*  begin slide 146

	*  Dr. Seuss on Deadlock:
		*  The Zax

	*  Semaphores vs. Monitors
  Semaphore                                                       Monitor</description>
    </item>
    <item rdf:about="https://www.cs.vassar.edu/courses/cs377-202651/week8?rev=1774551687&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-26T19:01:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>week8</title>
        <link>https://www.cs.vassar.edu/courses/cs377-202651/week8?rev=1774551687&amp;do=diff</link>
        <description>Week 8



Monitors in Java

	*  Java case study (starter code for Assign 4)
		*  this version deadlocks! 
		*  you will use two different approaches to fix:
			*  synchronized methods
			*  synchronized code blocks 





	*  Obscure Java 
		*  shortest compilable Java program?</description>
    </item>
    <item rdf:about="https://www.cs.vassar.edu/courses/cs377-202651/week9?rev=1775157381&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-02T19:16:21+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>week9</title>
        <link>https://www.cs.vassar.edu/courses/cs377-202651/week9?rev=1775157381&amp;do=diff</link>
        <description>Week 9



Assignment: Dining Java Philosophers

	*  Assign 4 
		*  [PDF]
		*  due: Tue, Mar 31, 11:59pm 




Channels (cont'd)

	*  CSP, Occam, and Golang!
	*  Peter Welch's slides introducing CSP and occam-pi (but we will use Go this semester!)
		*  Occam-pi Lecture Notes
		*</description>
    </item>
    <item rdf:about="https://www.cs.vassar.edu/courses/cs377-202651/week10?rev=1775761062&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-09T18:57:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>week10</title>
        <link>https://www.cs.vassar.edu/courses/cs377-202651/week10?rev=1775761062&amp;do=diff</link>
        <description>Week 10



Channels, CSP, and Go

	*  Last week:
		*  Peter Welch's Occam-pi Lecture Notes
		*  Go demo and starter code: see last week's notes for details
		*  Demo and codewalk of csp-dining-philosophers.go 




	*  Demo and codewalk: Sieve of Eratosthenes (Prime Number Sieve)</description>
    </item>
</rdf:RDF>
