Skip to content

Commit 54adc40

Browse files
committed
Schedule updates, exam dates, etc.
1 parent f09d321 commit 54adc40

3 files changed

Lines changed: 52 additions & 59 deletions

File tree

www/assignments/1.scrbl

Lines changed: 42 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -1,66 +1,59 @@
11
#lang scribble/manual
2-
@(require "../defns.rkt"
3-
(only-in scribble/html/html div))
2+
@title[#:tag "Assignment 1" #:style 'unnumbered]{Assignment 1: Racket Primer}
43

5-
@title[#:tag "Assignment 1" #:style 'unnumbered]{Assignment 1: Learning about Programming Languages}
4+
@bold{Due: Monday, February 5, 11:59PM}
65

7-
@bold{Due: Wednesday, January 31, 11:59PM}
6+
The goal of this assignment is to gain practice programming in Racket.
87

9-
Find two programming languages that are new to you, and answer the following questions:
8+
@bold{This is a collaborative assignment.} You may work with anyone
9+
you'd like on this assignment, but each person must submit their
10+
@tt{submit.zip} file on Gradescope.
1011

11-
@itemlist[#:style 'ordered
12+
You are given a @tt{racket-basics.zip} file (on ELMS under "Files"),
13+
that contains a README, a Makefile, and a number of Racket modules.
14+
In each module there are several function ``stubs,'' i.e. incomplete
15+
function definitions with type signatures, descriptions, and a small
16+
set of tests. Each function has a bogus (but type correct) body
17+
marked with a ``TODO'' comment. Your job is to replace each of these
18+
expressions with a correct implementation of the function.
1219

13-
@item{When was the language first introduced, approximately, and who
14-
developed it initially?}
20+
The last section of problems deals with functions that operate over a
21+
representation of expressions in a lambda-calculus-like language and
22+
asks you to compute a few simple facts about the given expression.
1523

16-
@item{Why was the language created? What community was the language
17-
aimed at? What is unique, interesting, and novel about the language?}
24+
Make sure you do not rename any files. Also make sure not to change
25+
the name or signature of any function given to you. You may add any
26+
additional functions that help you solve the overall problem you're
27+
tackling.
1828

19-
@item{Show and describe a fragment of code (in the language) that you think
20-
is particularly interesting, and describe what it does and why it is
21-
interesting. You don't necessarily need to install the language
22-
yourself and write your own code from scratch; examples from language
23-
documentation are fine.}
29+
@section[#:tag-prefix "a2-" #:style 'unnumbered]{Testing}
2430

25-
@item{Is the language still used today (as far as you can tell) for
26-
anything?}
31+
You can test your code in several ways:
2732

28-
]
33+
@itemlist[
2934

35+
@item{Running the code in DrRacket will (by default) run the
36+
test submodule and print out a report of any test failures.
37+
This is actually a configurable preference, but it is on by
38+
default.}
3039

31-
You should exclude the following languages from your search: C, C++,
32-
C#, Java, Javascript, FORTRAN, LISP, OCaml, Pascal, Perl, Python,
33-
Racket, Ruby, Scheme, SML, Visual Basic.
40+
@item{Using the command line @tt{raco test <filename.rkt>} from
41+
the same directory as your Racket code will test the module
42+
in @tt{<filename.rkt>}. If you run @tt{raco test .}, it will
43+
test all of the Racket files in the current directory.}]
3444

35-
@section[#:style 'unnumbered]{What to turn in}
45+
Note: running @tt{racket <filename.rkt>} will @bold{not} test the
46+
file; you need to use @tt{raco} or DrRacket.
3647

37-
Submit a PDF or plain text file containing your write-up via
38-
@link[@gradescope]{Gradescope}.
48+
@section[#:tag-prefix "a2-" #:style 'unnumbered]{Submitting}
3949

40-
@;{Until this assignment is officially assigned (see the due date), submissions
41-
will not be accepted.}
50+
Use the included Makefile to run @tt{make submit.zip} (or simply
51+
@tt{make}) to generate an appropriate @tt{submit.zip} file for
52+
submitting to Gradescope.
4253

43-
@;{We will be using GitHub Classroom. This means you will work with git
44-
repositories and turning in your work consists of pushing the
45-
repository to GitHub.
54+
@section[#:tag-prefix "a2-" #:style 'unnumbered]{Grading}
4655

47-
You will need a GitHub account. Please sign up for one (they are
48-
free) if you don't already have one.
49-
50-
Visit this URL in a browser:
51-
52-
@centered{@link["https://classroom.github.com/a/aVZJ3fsm"]{https://classroom.github.com/a/aVZJ3fsm}}
53-
54-
After signing in, you should see a list of ID numbers. Select your
55-
UID from the list to associate your GitHub username with the UID.
56-
57-
Press "Accept this assignment" which will create a repository for your work.
58-
59-
Clone this repository to your machine. There are two template files
60-
@tt{lang1.md} and @tt{lang2.md} for you to edit. There is also an
61-
example solution in @tt{racket.md}. You only need to edit
62-
@tt{lang1.md} and @tt{lang2.md}. @bold{Do not rename or move these
63-
files.}
64-
65-
At any point, you may save your work and push the repository. We will
66-
grade the last push before the deadline.}
56+
Your submission will be graded for correctness. Passing the unit
57+
tests included in the file is necessary but @bold{not sufficient} to
58+
receive a perfect score. You are strongly encouraged to add your own
59+
tests to ensure the correctness of your solutions.

www/defns.rkt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,10 @@
2323
(define KEY "KEY")
2424

2525

26-
(define m1-date "TBD")
27-
(define m2-date "TBD")
26+
(define m1-date "March 6")
27+
(define m2-date "April 17")
2828
(define midterm-hours "24")
29-
(define final-date "TBD")
29+
(define final-date "May 14")
3030
(define elms-url "https://umd.instructure.com/courses/1359023")
3131

3232

www/schedule.scrbl

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,15 @@
2929

3030

3131
(list @wk{1/29}
32-
@seclink["Assignment 1"]{A1}
33-
@elem{@secref["OCaml to Racket"]}
32+
""
33+
@elem{@secref["OCaml to Racket"]}
3434
@elem{@secref["OCaml to Racket"]})
35-
#|
36-
(list @wk{9/11}
37-
@seclink["Assignment 2"]{A2}
38-
@elem{@secref["a86"]}
39-
@elem{@secref["Abscond"]})
4035

36+
(list @wk{2/5}
37+
@seclink["Assignment 1"]{A1}
38+
@elem{@secref["a86"]}
39+
@elem{@secref["Abscond"]})
40+
#|
4141
(list @wk{9/18}
4242
""
4343
@itemlist[@item{@secref["Blackmail"]}

0 commit comments

Comments
 (0)