{"size": 2211, "ext": "scrbl", "max_stars_repo_path": "www/assignments/1.scrbl", "max_stars_repo_name": "plum-umd/cmsc430", "max_stars_repo_stars_event_min_datetime": null, "max_stars_repo_stars_event_max_datetime": null, "max_issues_repo_path": "www/assignments/1.scrbl", "max_issues_repo_name": "plum-umd/cmsc430", "max_issues_repo_issues_event_min_datetime": null, "max_issues_repo_issues_event_max_datetime": null, "max_forks_repo_path": "www/assignments/1.scrbl", "max_forks_repo_name": "plum-umd/cmsc430", "max_forks_repo_forks_event_min_datetime": null, "max_forks_repo_forks_event_max_datetime": null}
{"max_stars_count": null, "max_issues_count": null, "max_forks_count": null, "avg_line_length": 35.6612903226, "max_line_length": 100, "alphanum_fraction": 0.762550882}
#lang scribble/manual
@(require "../defns.rkt")

@title[#:tag "Assignment 1" #:style 'unnumbered]{Assignment 1: Learning about Programming Languages}

@bold{Due: Thursday, February 3, 11:59PM}

Find two programming languages that are new to you, and answer the following questions:

@itemlist[#:style 'ordered

@item{When was the language first introduced, approximately, and who
developed it initially?}

@item{Why was the language created? What community was the language
aimed at? What is unique, interesting, and novel about the language?}

@item{Show and describe a fragment of code (in the language) that you think
is particularly interesting, and describe what it does and why it is
interesting. You don't necessarily need to install the language
yourself and write your own code from scratch; examples from language
documentation are fine.}

@item{Is the language still used today (as far as you can tell) for
anything?}

]


You should exclude the following languages from your search: C, C++,
C#, Java, Javascript, FORTRAN, LISP, OCaml, Pascal, Perl, Python,
Racket, Ruby, Scheme, SML, Visual Basic.

@section[#:style 'unnumbered]{What to turn in}

Submit this assignment via @link[@gradescope]{Gradescope}.

@;{We will be using GitHub Classroom.  This means you will work with git
repositories and turning in your work consists of pushing the
repository to GitHub.

You will need a GitHub account.  Please sign up for one (they are
free) if you don't already have one.

Visit this URL in a browser:

@centered{@link["https://classroom.github.com/a/aVZJ3fsm"]{https://classroom.github.com/a/aVZJ3fsm}}

After signing in, you should see a list of ID numbers.  Select your
UID from the list to associate your GitHub username with the UID.

Press "Accept this assignment" which will create a repository for your work.

Clone this repository to your machine.  There are two template files
@tt{lang1.md} and @tt{lang2.md} for you to edit.  There is also an
example solution in @tt{racket.md}.  You only need to edit
@tt{lang1.md} and @tt{lang2.md}.  @bold{Do not rename or move these
files.}

At any point, you may save your work and push the repository.  We will
grade the last push before the deadline.}
