https://github.com/joshi4/cs240h-notes
Scribed lecture notes.
https://github.com/joshi4/cs240h-notes
Last synced: 5 months ago
JSON representation
Scribed lecture notes.
- Host: GitHub
- URL: https://github.com/joshi4/cs240h-notes
- Owner: joshi4
- Created: 2014-04-18T08:08:23.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2014-05-05T23:22:22.000Z (about 12 years ago)
- Last Synced: 2025-08-24T17:47:04.009Z (11 months ago)
- Size: 156 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# CS240h Scribe Notes
### David Mazieres, Bryan O'Sullivan, and David Terei
Class notes for the 2014 Spring quarter iteration of this class
written by different students for each lecture.
Class homepage is [here](http://www.scs.stanford.edu/14sp-cs240h/).
## Writing Notes
Notes should be taken in markdown format and processed by pandoc. To
install pandoc, run:
cabal install pandoc -fhighlighting-kate
Next, to get access to the notes repository, run:
git clone git@github.com:scslab/cs240h-notes.git
Create a separate subdirectory for each lecture, starting with a
two-digit lecture number. The markdown lecture file should end with
`.md`. For example, the basics lecture should be called
`01-basics/basics.md`. You can place any additional relevant files
(such as images) in the same directory. You can rebuild the full set
of notes by running `make` in the top level directory, and opening the
resulting `index.html` in your browser.
## Submitting your notes
Once you've written up your notes, please do one of the following:
* Submit a pull request through Github and email cs240h-staff.
* Email cs240h-staff the URL of a git repository from which we can
pull your notes.
This will allow us to integrate them with the rest of the class.
## Writing Markdown
A description of markdown format is available in the [pandoc README
file][pandoc-README]. Markdown is a simple format intended to be as
similar as possible to plain text. The most useful forms of markup
available in markdown:
* To include a block of Haskell source code, include it between
lines of at least three tildes, adding `{.haskell}` after the
start, like so:
~~~~~
~~~ {.haskell}
main :: IO ()
main = putStrLn "hello world"
~~~
~~~~~
which results in nicely syntax highlighted code, like this:
~~~ {.haskell}
main :: IO ()
main = putStrLn "hello world"
~~~
* If the code block is not Haskell source (e.g., you are showing GHCi
interaction), simply omit the `{.haskell}`.
* To include inline code, surround it with backticks. For example:
~~~
The code `div a b` throws an exception if `b == 0`.
~~~
results in: The code `div a b` throws an exception if `b == 0`.
If your code starts or ends with a backtick, you must start or end
with more backticks. For example:
~~~
In Haskell, placing backticks around a function, e.g.,
`` `div` ``, turns it from a prefix function to an infix
function.
~~~
Which yields: In Haskell, placing backticks around a function,
e.g., `` `div` ``, turns it from a prefix function to an infix
function.
* Sections are started by line beginning with `#`. Subsections by a
line starting with two `#` characters. For example:
~~~
# Section name
...
## Subsection name
~~~
* To emphasize text, surround it with `*` or `_`. For strong
emphasis, use `**` or `__`.
~~~
This is *emphasized*, while this is **strongly emphasized**.
You can use underscores and get _the same effect_.
~~~
This is *emphasized*, while this is **strongly emphasized**. You
can use underscores and get _the same effect_.
* To include a hyperlink, the syntax is:
`[text-of-link][name-of-link]`, where someplace else in your file
you have a line declaring the link destination for `name-of-link`.
Alternatively, you can use `[text-of-link](link destination)`.
For example the following two examples:
~~~
Use [the pandoc tool][pandoc] to format slides.
[pandoc]: http://johnmacfarlane.net/pandoc/
~~~
~~~
Use [the pandoc tool](http://johnmacfarlane.net/pandoc/) to
format slides.
~~~
Both produce: Use [the pandoc tool][pandoc] to format slides.
* You can comment text out using an html comment (e.g.,
``).
* Finally, if you want to be really fancy, you can include an image by
placing a `!` before a link. In a paragraph, the link text becomes
the alt text, but if the image is its own paragraph, the link text
becomes the caption.
~~~

~~~
Produces:

You are by no means expected to draw figures, but if you feel like
doing so, we recommend using [inkscape][inkscape] to produce SVG
images.
[pandoc]: http://johnmacfarlane.net/pandoc/
[pandoc-README]: http://johnmacfarlane.net/pandoc/README.html
[inkscape]: http://www.inkscape.org