You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+27-6Lines changed: 27 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,13 +10,14 @@ This is a library with Scala utilities for Computer Science teaching. The librar
10
10
11
11
This repo in used in this course *(in Swedish)*: http://cs.lth.se/pgk with course material published as free open source here: https://github.com/lunduniversity/introprog
12
12
13
-
## How to use this library
13
+
14
+
## How to use introprog-scalalib
14
15
### Using sbt
15
16
16
17
If you have the [Scala Build Tool](https://www.scala-sbt.org/download.html) then you can put this text in a file called `build.sbt`
## Intentions and philosophy behind introprog-scalalib
58
+
59
+
This repo includes utilities to empower learners to advance from basic to intermediate levels of computer science by providing easy-to-use constructs for creating simple desktop apps in terminal and using simple 2D graphics. The utilities are implemented and exposed through an api that follows these guidelines:
60
+
61
+
* Use as simple constructs as possible.
62
+
* Follow Scala idioms with a pragmatic mix of imperative, functional and object-oriented programming.
63
+
* Don't use advanced functional programming concepts and magical implicit.
64
+
* Prefer a clean api with single-responsibility functions in simple modules.
65
+
* Prefer immutability over mutable state, `Vector` for sequences and case classes for data.
66
+
* Hide/avoid threading and complicated concurrency.
67
+
* Inspiration:
68
+
-[Talk by Martin Odersky: Scala the Simple Parts](https://www.youtube.com/watch?v=ecekSCX3B4Q)[Slides here](https://www.slideshare.net/Odersky/scala-the-simple-parts)
69
+
-[Principle of least power](http://www.lihaoyi.com/post/StrategicScalaStylePrincipleofLeastPower.html)
0 commit comments