Skip to content

Commit 79be868

Browse files
committed
Update code
1 parent 0f6533d commit 79be868

File tree

7 files changed

+48
-60
lines changed

7 files changed

+48
-60
lines changed

src/main/kotlin/org/athenian/ChainedOperations.kt

Lines changed: 32 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -3,47 +3,42 @@ package org.athenian
33
import java.io.File
44

55
fun main() {
6-
val v1 =
7-
evenNumbers()
8-
.take(10)
9-
.filter { it <= 8 }
10-
.average()
11-
println("Average of even numbers <= 8: $v1")
6+
evenNumbers()
7+
.take(10)
8+
.filter { it <= 8 }
9+
.average()
10+
.also { println("Average of even numbers <= 8: $it") }
1211

13-
val v2 =
14-
evenNumbers()
15-
.take(10)
16-
.filter { it <= 8 }
17-
.map { it * it }
18-
.average()
19-
println("Average of even numbers <= 8 squared: $v2")
12+
evenNumbers()
13+
.take(10)
14+
.filter { it <= 8 }
15+
.map { it * it }
16+
.average()
17+
.also { println("Average of even numbers <= 8 squared: $it") }
2018

21-
val allNums =
22-
evenNumbers()
23-
.take(5)
24-
.plus(oddNumbers().take(5))
25-
.sorted()
26-
.toList()
27-
println("All numbers <= 10: $allNums")
19+
evenNumbers()
20+
.take(5)
21+
.plus(oddNumbers().take(5))
22+
.sorted()
23+
.toList()
24+
.also { println("All numbers <= 10: $it") }
2825

29-
val flatMapNums =
30-
(0..6)
31-
.flatMap {
32-
if (it % 2 == 0)
33-
List(it) { v -> it }
34-
else
35-
emptyList()
36-
}
37-
println("Flatmap numbers: $flatMapNums")
26+
(0..6)
27+
.flatMap {
28+
if (it % 2 == 0)
29+
List(it) { v -> it }
30+
else
31+
emptyList()
32+
}
33+
.also { println("Flatmap numbers: $it") }
3834

39-
val mappedFlatMapNums =
40-
(1..10)
41-
.flatMap { (1..(it * 2)).map { i -> it } }
42-
//.also { println(it) }
43-
.groupBy { it }
44-
//.also { println(it) }
45-
.map { (i, v) -> i to v.size }
46-
println("Mapped flatmap numbers: $mappedFlatMapNums")
35+
(1..10)
36+
.flatMap { (1..(it * 2)).map { i -> it } }
37+
//.also { println(it) }
38+
.groupBy { it }
39+
//.also { println(it) }
40+
.map { (i, v) -> i to v.size }
41+
.also { println("Mapped flatmap numbers: $it") }
4742

4843
File("data/words")
4944
.bufferedReader()

src/main/kotlin/org/athenian/CollectionOperations.kt

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ fun evenNumbers() =
88
}
99

1010
fun main() {
11-
1211
val everyOther =
1312
doReMi()
1413
.mapIndexed { i, note -> if (i % 2 == 0) note else "" }
@@ -23,13 +22,12 @@ fun main() {
2322
val reversedOdds = oddNumbers().take(11).toList().reversed().joinToString(", ")
2423
println("Odd numbers <= 11 reversed: $reversedOdds")
2524

26-
val zipped =
27-
evenNumbers()
28-
.take(6)
29-
.map { it * it }
30-
.zip(evenNumbers().take(6).map { it * it * it })
31-
.joinToString(", ")
32-
println("Zipped squares and cubes: $zipped")
25+
evenNumbers()
26+
.take(6)
27+
.map { it * it }
28+
.zip(evenNumbers().take(6).map { it * it * it })
29+
.joinToString(", ")
30+
.also { println("Zipped squares and cubes: $it") }
3331

3432
println("Min even number <= 10: ${evenNumbers().take(10).min()}")
3533
println("Max even number <= 10: ${evenNumbers().take(10).max()}")

src/main/kotlin/org/athenian/ContinuationsSequencesAndYields.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package org.athenian
22

3-
fun oddNumbers(): Sequence<Int> =
3+
fun oddNumbers() =
44
sequence {
55
(0..Int.MAX_VALUE)
66
.asSequence()

src/main/kotlin/org/athenian/EvaluationOrdering.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ fun main() {
99
println("Before list sum")
1010
println("List sum: ${listVals.sum()}")
1111

12-
1312
val seqVals =
1413
sequenceOf(1, 2, 3, 4, 5)
1514
.onEach { println("Processing sequence value: $it") }

src/main/kotlin/org/athenian/EveryNthSequence.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ fun <T> Sequence<T>.everyNth(inc: Int) =
88
}
99
}
1010

11-
1211
fun <T> Iterable<T>.everyNth(inc: Int) =
1312
buildList {
1413
for ((index, element) in this@everyNth.withIndex()) {

src/main/kotlin/org/athenian/ExpensiveCalculations.kt

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ package org.athenian
33
import kotlin.system.measureTimeMillis
44

55
fun main() {
6-
76
class DataFetcher {
87
fun fetch(valueToFind: Int): Int {
98
Thread.sleep(100)
@@ -23,14 +22,13 @@ fun main() {
2322
}
2423
println(" took ${eagerTime}ms with eager evaluation.")
2524

26-
val lazyTime =
27-
measureTimeMillis {
28-
print(
29-
(1..50)
30-
.asSequence()
31-
.onEach { println("Evaluating $it") }
32-
.map { dataFetcher.fetch(it) }
33-
.any { it == 10 })
34-
}
35-
println(" took ${lazyTime}ms with lazy evaluation.")
25+
measureTimeMillis {
26+
print(
27+
(1..50)
28+
.asSequence()
29+
.onEach { println("Evaluating $it") }
30+
.map { dataFetcher.fetch(it) }
31+
.any { it == 10 })
32+
}
33+
.also { println(" took $it ms with lazy evaluation.") }
3634
}

src/main/kotlin/org/athenian/LogReader.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ package org.athenian
33
import java.io.File
44

55
fun main() {
6-
76
fun getLines(file: File): Sequence<String> {
87
// Non expression body
98
return sequence {

0 commit comments

Comments
 (0)