# short-exercises

Source templates for short exercises during the lecture, sometimes with tests.

## Overview:

Templates are within `src/main/scala`. Parts that you should complete are
usually marked with `???`.

| lecture                         | package                                                           | tests
|---------------------------------|-------------------------------------------------------------------|----------------------------
| 2: Functional Data Structures   | [`datastructures`](src/main/scala/datastructures)                 | `testOnly datastructures.*`
| 3: Error Handling               | [`errors`](src/main/scala/errors)                                 | `testOnly errors.*`
| 4: Laziness                     | [`laziness`](src/main/scala/laziness/)                            | `testOnly laziness.*`

## Usage tips:
To keep your local solutions to the exercises when pulling from the repository,
use
```shell
git pull --rebase --autostash
```
This will keep both commited and uncommited changes.
If you are using Intellij IDEA, "rebase" is available as option in the update dialog and stashing is default.

### Tests:
If you are using `sbt` directly, you can use `testOnly` to run a specific test suite (see table).

To automatically run tests, whenever a file changes, use `~testOnly` (`~` also works with other sbt commands).