Newer
Older
Source templates for short exercises during the lecture, sometimes with tests.
To mark your progress during the lecture, please vote on
[sabix.eu:31337](http://sabix.eu:31337/)
## 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.*`
| 5: Algebras, Laws, and Monoids | [`algebra`](src/main/scala/algebra/) | `testOnly algebra.*`
| 6: Typeclasses | [`typeclasses`](src/main/scala/typeclasses/) | `testOnly typeclasses.*` (needs some uncommenting)
## 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).