trackler 2.0.3.0 → 2.0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. checksums.yaml +4 -4
  2. data/fixtures/common/exercises/no-metadata/description.md +1 -0
  3. data/lib/trackler/problem.rb +12 -0
  4. data/lib/trackler/problems.rb +8 -12
  5. data/lib/trackler/version.rb +1 -1
  6. data/tracks/bash/README.md +2 -0
  7. data/tracks/c/config.json +9 -2
  8. data/tracks/c/exercises/sieve/makefile +15 -0
  9. data/tracks/c/exercises/sieve/src/example.c +50 -0
  10. data/tracks/c/exercises/sieve/src/sieve.h +10 -0
  11. data/tracks/c/exercises/sieve/test/test_sieve.c +113 -0
  12. data/tracks/c/exercises/sieve/test/vendor/unity.c +1300 -0
  13. data/tracks/c/exercises/sieve/test/vendor/unity.h +274 -0
  14. data/tracks/c/exercises/sieve/test/vendor/unity_internals.h +701 -0
  15. data/tracks/coffeescript/.travis.yml +1 -0
  16. data/tracks/coldfusion/.travis.yml +1 -0
  17. data/tracks/crystal/Makefile +18 -15
  18. data/tracks/crystal/README.md +5 -5
  19. data/tracks/crystal/config.json +6 -0
  20. data/tracks/crystal/exercises/acronym/src/acronym.cr +1 -0
  21. data/tracks/crystal/exercises/anagram/src/anagram.cr +1 -0
  22. data/tracks/crystal/exercises/atbash-cipher/src/atbash_cipher.cr +1 -0
  23. data/tracks/crystal/exercises/binary/src/binary.cr +1 -0
  24. data/tracks/crystal/exercises/bob/src/bob.cr +1 -0
  25. data/tracks/crystal/exercises/bracket-push/src/bracket_push.cr +1 -0
  26. data/tracks/crystal/exercises/difference-of-squares/spec/difference_of_squares_spec.cr +44 -0
  27. data/tracks/crystal/exercises/difference-of-squares/src/example.cr +15 -0
  28. data/tracks/crystal/exercises/forth/src/forth.cr +1 -0
  29. data/tracks/crystal/exercises/gigasecond/src/gigasecond.cr +1 -0
  30. data/tracks/crystal/exercises/hamming/src/hamming.cr +1 -0
  31. data/tracks/crystal/exercises/hello-world/src/hello_world.cr +1 -0
  32. data/tracks/crystal/exercises/largest-series-product/src/largest_series_product.cr +1 -0
  33. data/tracks/crystal/exercises/leap/src/leap.cr +1 -0
  34. data/tracks/crystal/exercises/pangram/src/pangram.cr +1 -0
  35. data/tracks/crystal/exercises/raindrops/src/raindrops.cr +1 -0
  36. data/tracks/crystal/exercises/react/src/react.cr +1 -0
  37. data/tracks/crystal/exercises/rna-transcription/src/rna_transcription.cr +1 -0
  38. data/tracks/crystal/exercises/roman-numerals/src/roman_numerals.cr +1 -0
  39. data/tracks/crystal/exercises/sieve/src/sieve.cr +1 -0
  40. data/tracks/crystal/src/generator/exercises/difference_of_squares.cr +39 -0
  41. data/tracks/go/exercises/allergies/allergies_test.go +2 -2
  42. data/tracks/go/exercises/anagram/anagram_test.go +3 -3
  43. data/tracks/go/exercises/grade-school/grade_school_test.go +3 -3
  44. data/tracks/go/exercises/secret-handshake/secret_handshake_test.go +1 -1
  45. data/tracks/java/config.json +13 -1
  46. data/tracks/java/exercises/binary-search-tree/build.gradle +18 -0
  47. data/tracks/java/exercises/binary-search-tree/src/example/java/BST.java +122 -0
  48. data/tracks/java/exercises/binary-search-tree/src/main/java/.keep +0 -0
  49. data/tracks/java/exercises/binary-search-tree/src/test/java/.keep +0 -0
  50. data/tracks/java/exercises/binary-search-tree/src/test/java/BSTTest.java +163 -0
  51. data/tracks/java/exercises/pythagorean-triplet/build.gradle +18 -0
  52. data/tracks/java/exercises/pythagorean-triplet/src/example/java/PythagoreanTriplet.java +117 -0
  53. data/tracks/java/exercises/pythagorean-triplet/src/main/java/PythagoreanTriplet.java +3 -0
  54. data/tracks/java/exercises/pythagorean-triplet/src/test/java/PythagoreanTripletTest.java +95 -0
  55. data/tracks/java/exercises/settings.gradle +2 -0
  56. data/tracks/julia/README.md +16 -0
  57. data/tracks/perl5/README.md +2 -0
  58. data/tracks/perl6/README.md +2 -1
  59. data/tracks/php/config.json +5 -0
  60. data/tracks/php/exercises/sieve/example.php +29 -0
  61. data/tracks/php/exercises/sieve/sieve_test.php +201 -0
  62. data/tracks/pony/.travis.yml +1 -0
  63. data/tracks/python/exercises/anagram/anagram_test.py +1 -0
  64. data/tracks/python/exercises/beer-song/beer_song_test.py +1 -0
  65. data/tracks/python/exercises/binary-search/binary_search_test.py +1 -0
  66. data/tracks/python/exercises/binary/binary_test.py +1 -0
  67. data/tracks/python/exercises/bob/bob_test.py +1 -0
  68. data/tracks/python/exercises/clock/clock_test.py +1 -0
  69. data/tracks/python/exercises/etl/etl_test.py +1 -0
  70. data/tracks/python/exercises/gigasecond/gigasecond_test.py +1 -0
  71. data/tracks/python/exercises/grains/grains_test.py +1 -0
  72. data/tracks/python/exercises/leap/leap_test.py +1 -0
  73. data/tracks/python/exercises/meetup/meetup_test.py +1 -0
  74. data/tracks/python/exercises/nucleotide-count/nucleotide_count_test.py +1 -0
  75. data/tracks/python/exercises/ocr-numbers/example.py +1 -0
  76. data/tracks/python/exercises/ocr-numbers/ocr_test.py +1 -0
  77. data/tracks/python/exercises/perfect-numbers/perfect_numbers_test.py +1 -0
  78. data/tracks/python/exercises/phone-number/phone_number_test.py +1 -0
  79. data/tracks/python/exercises/pig-latin/pig_latin_test.py +1 -0
  80. data/tracks/python/exercises/point-mutations/point_mutations_test.py +1 -0
  81. data/tracks/python/exercises/poker/poker_test.py +1 -0
  82. data/tracks/python/exercises/prime-factors/prime_factors_test.py +1 -0
  83. data/tracks/python/exercises/pythagorean-triplet/example.py +2 -3
  84. data/tracks/python/exercises/rail-fence-cipher/rail_fence_cipher_test.py +1 -0
  85. data/tracks/python/exercises/raindrops/raindrops_test.py +1 -0
  86. data/tracks/python/exercises/rectangles/rectangles_count_test.py +1 -0
  87. data/tracks/python/exercises/robot-simulator/robot_simulator_test.py +1 -0
  88. data/tracks/python/exercises/roman-numerals/roman_numerals_test.py +1 -0
  89. data/tracks/python/exercises/run-length-encoding/run_length_test.py +1 -0
  90. data/tracks/python/exercises/say/say_test.py +1 -0
  91. data/tracks/python/exercises/scrabble-score/scrabble_score_test.py +1 -0
  92. data/tracks/python/exercises/sieve/sieve_test.py +1 -0
  93. data/tracks/python/exercises/space-age/space_age_test.py +1 -0
  94. data/tracks/python/exercises/triangle/triangle_test.py +1 -0
  95. data/tracks/python/exercises/word-count/word_count_test.py +1 -0
  96. data/tracks/python/requirements-travis.txt +1 -1
  97. data/tracks/ruby/docs/24pullrequests.md +21 -0
  98. data/tracks/ruby/exercises/bowling/.version +1 -1
  99. data/tracks/ruby/exercises/bowling/bowling_test.rb +44 -15
  100. data/tracks/ruby/exercises/bowling/example.rb +10 -5
  101. data/tracks/ruby/exercises/bowling/example.tt +4 -2
  102. data/tracks/ruby/lib/bowling_cases.rb +1 -1
  103. data/tracks/scala/exercises/bank-account/HINTS.md +11 -0
  104. data/tracks/scala/exercises/bank-account/example.scala +2 -4
  105. data/tracks/scala/exercises/bank-account/src/main/scala/BankAccount.scala +13 -0
  106. data/tracks/scala/exercises/bank-account/src/test/scala/BankAccountTest.scala +5 -5
  107. data/tracks/scala/exercises/hamming/HINTS.md +57 -0
  108. data/tracks/scala/exercises/hello-world/HINTS.md +8 -0
  109. data/tracks/scala/exercises/nucleotide-count/HINTS.md +61 -0
  110. metadata +48 -2
@@ -0,0 +1,8 @@
1
+ ## Hints
2
+ For this exercise two Scala features come in handy:
3
+ - [Default Parameter Values](http://docs.scala-lang.org/tutorials/tour/default-parameter-values.html)
4
+ - [String Interpolation](http://docs.scala-lang.org/overviews/core/string-interpolation.html)
5
+
6
+ #### Common pitfalls that you should avoid
7
+ - `null` is usually not considered a valid value in Scala, and there are no `null` checks needed (if you don't have to interface with Java code, say). Instead there is the [Option](http://danielwestheide.com/blog/2012/12/19/the-neophytes-guide-to-scala-part-5-the-option-type.html) type if you want to express the possible absence of a value. But for this exercise just assume a normal non-`null` String parameter.
8
+ - Usually there is no need in Scala to use `return`. For a discussion see [here](http://stackoverflow.com/questions/24856106/return-in-a-scala-function-literal). Or as a quote from that discussion: *Don't use return, it makes Scala cry.*
@@ -0,0 +1,61 @@
1
+ ## Hints
2
+ A common use of `Either` is to indicate a computation that may possibly result in an error
3
+ (if the actual error is of no interest then the simpler `Option` type might be a better choice).
4
+ In the absence of an error the result is usually a `Right` (mnemonic: the "right" value)
5
+ whereas an error is a `Left`, for example a `Left[String]` containing an error message.
6
+ Note that in Scala `Either` is unbiased, so you have to make it biased with a `RightProjection` using `Either.right`.
7
+ If you are unfamiliar with `Either` you may read [this tutorial](http://danielwestheide.com/blog/2013/01/02/the-neophytes-guide-to-scala-part-7-the-either-type.html).
8
+ `Either` (or its `RightProjection` to be more exact) is a so-called [Monad](https://en.wikipedia.org/wiki/Monad_(functional_programming)) which
9
+ covers a "computational aspect", in this case error handling.
10
+ Proper use of Monads can result in very concise yet elegant
11
+ and readable code. Improper use can easily result in the contrary.
12
+ Watch [this video](https://www.youtube.com/watch?v=Mw_Jnn_Y5iA) to learn more.
13
+ #### Common pitfalls that you should avoid
14
+ There are a few rules of thumbs for `Either`:
15
+ 1. If you don't need it don't use it. Instead of
16
+ ```scala
17
+ def add1(x: Int): Either[String, Int] = Right(x + 1)
18
+ ```
19
+ better have
20
+ ```scala
21
+ def add1(x: Int): Int = x + 1
22
+ ```
23
+ (there is `RightProjection.map` to apply such simple functions,
24
+ so you don't have to clutter them with `Either`).
25
+ 2. Don't "unwrap" if you don't really need to.
26
+ Often there are built-in functions for your purpose. Indicators of premature
27
+ unwrapping are `isLeft/isRight` or pattern matching. For example, instead of
28
+ ```scala
29
+ val x: Either[String, Int] = ...
30
+
31
+ if (x.isRight) x.right.get + 1 else x.left.get
32
+ // or
33
+ x match {
34
+ case Right(n) => n + 1
35
+ case Left(s) => s
36
+ }
37
+ ```
38
+ better have
39
+ ```scala
40
+ x fold (identity, _ + 1)
41
+ ```
42
+ 3. Monads can be used inside a for-comprehension FTW.
43
+ This is advisable when you want to "compose" several `Either` instances. Instead of
44
+ ```scala
45
+ val xo: Either[String, Int] = ...
46
+ val yo: Either[String, Int] = ...
47
+ val zo: Either[String, Int] = ...
48
+
49
+ xo.right.flatMap(x =>
50
+ yo.right.flatMap(y =>
51
+ zo.right.map(z =>
52
+ x + y + z)))
53
+ ```
54
+ better have
55
+ ```scala
56
+ for {
57
+ x <- xo.right
58
+ y <- yo.right
59
+ z <- zo.right
60
+ } yield x + y + z
61
+ ```
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: trackler
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.3.0
4
+ version: 2.0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Katrina Owen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-11-29 00:00:00.000000000 Z
11
+ date: 2016-12-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rubyzip
@@ -418,6 +418,7 @@ files:
418
418
  - fixtures/common/exercises/mango/canonical-data.json
419
419
  - fixtures/common/exercises/mango/description.md
420
420
  - fixtures/common/exercises/mango/metadata.yml
421
+ - fixtures/common/exercises/no-metadata/description.md
421
422
  - fixtures/common/exercises/one/description.md
422
423
  - fixtures/common/exercises/one/metadata.yml
423
424
  - fixtures/common/exercises/three/description.md
@@ -676,6 +677,13 @@ files:
676
677
  - tracks/c/exercises/series/test/vendor/unity.c
677
678
  - tracks/c/exercises/series/test/vendor/unity.h
678
679
  - tracks/c/exercises/series/test/vendor/unity_internals.h
680
+ - tracks/c/exercises/sieve/makefile
681
+ - tracks/c/exercises/sieve/src/example.c
682
+ - tracks/c/exercises/sieve/src/sieve.h
683
+ - tracks/c/exercises/sieve/test/test_sieve.c
684
+ - tracks/c/exercises/sieve/test/vendor/unity.c
685
+ - tracks/c/exercises/sieve/test/vendor/unity.h
686
+ - tracks/c/exercises/sieve/test/vendor/unity_internals.h
679
687
  - tracks/c/exercises/sum-of-multiples/makefile
680
688
  - tracks/c/exercises/sum-of-multiples/src/example.c
681
689
  - tracks/c/exercises/sum-of-multiples/src/example.h
@@ -1138,45 +1146,66 @@ files:
1138
1146
  - tracks/crystal/docs/RESOURCES.md
1139
1147
  - tracks/crystal/docs/TESTS.md
1140
1148
  - tracks/crystal/exercises/acronym/spec/acronym_spec.cr
1149
+ - tracks/crystal/exercises/acronym/src/acronym.cr
1141
1150
  - tracks/crystal/exercises/acronym/src/example.cr
1142
1151
  - tracks/crystal/exercises/anagram/spec/anagram_spec.cr
1152
+ - tracks/crystal/exercises/anagram/src/anagram.cr
1143
1153
  - tracks/crystal/exercises/anagram/src/example.cr
1144
1154
  - tracks/crystal/exercises/atbash-cipher/spec/atbash_cipher_spec.cr
1155
+ - tracks/crystal/exercises/atbash-cipher/src/atbash_cipher.cr
1145
1156
  - tracks/crystal/exercises/atbash-cipher/src/example.cr
1146
1157
  - tracks/crystal/exercises/binary/spec/binary_spec.cr
1158
+ - tracks/crystal/exercises/binary/src/binary.cr
1147
1159
  - tracks/crystal/exercises/binary/src/example.cr
1148
1160
  - tracks/crystal/exercises/bob/spec/bob_spec.cr
1161
+ - tracks/crystal/exercises/bob/src/bob.cr
1149
1162
  - tracks/crystal/exercises/bob/src/example.cr
1150
1163
  - tracks/crystal/exercises/bracket-push/spec/bracket_push_spec.cr
1164
+ - tracks/crystal/exercises/bracket-push/src/bracket_push.cr
1151
1165
  - tracks/crystal/exercises/bracket-push/src/example.cr
1166
+ - tracks/crystal/exercises/difference-of-squares/spec/difference_of_squares_spec.cr
1167
+ - tracks/crystal/exercises/difference-of-squares/src/example.cr
1152
1168
  - tracks/crystal/exercises/forth/spec/forth_spec.cr
1153
1169
  - tracks/crystal/exercises/forth/src/example.cr
1170
+ - tracks/crystal/exercises/forth/src/forth.cr
1154
1171
  - tracks/crystal/exercises/gigasecond/spec/gigasecond_spec.cr
1155
1172
  - tracks/crystal/exercises/gigasecond/src/example.cr
1173
+ - tracks/crystal/exercises/gigasecond/src/gigasecond.cr
1156
1174
  - tracks/crystal/exercises/hamming/spec/hamming_spec.cr
1157
1175
  - tracks/crystal/exercises/hamming/src/example.cr
1176
+ - tracks/crystal/exercises/hamming/src/hamming.cr
1158
1177
  - tracks/crystal/exercises/hello-world/HINTS.md
1159
1178
  - tracks/crystal/exercises/hello-world/spec/hello_world_spec.cr
1160
1179
  - tracks/crystal/exercises/hello-world/src/example.cr
1180
+ - tracks/crystal/exercises/hello-world/src/hello_world.cr
1161
1181
  - tracks/crystal/exercises/largest-series-product/spec/largest_series_product_spec.cr
1162
1182
  - tracks/crystal/exercises/largest-series-product/src/example.cr
1183
+ - tracks/crystal/exercises/largest-series-product/src/largest_series_product.cr
1163
1184
  - tracks/crystal/exercises/leap/spec/leap_spec.cr
1164
1185
  - tracks/crystal/exercises/leap/src/example.cr
1186
+ - tracks/crystal/exercises/leap/src/leap.cr
1165
1187
  - tracks/crystal/exercises/pangram/spec/pangram_spec.cr
1166
1188
  - tracks/crystal/exercises/pangram/src/example.cr
1189
+ - tracks/crystal/exercises/pangram/src/pangram.cr
1167
1190
  - tracks/crystal/exercises/raindrops/spec/raindrops_spec.cr
1168
1191
  - tracks/crystal/exercises/raindrops/src/example.cr
1192
+ - tracks/crystal/exercises/raindrops/src/raindrops.cr
1169
1193
  - tracks/crystal/exercises/react/spec/react_spec.cr
1170
1194
  - tracks/crystal/exercises/react/src/example.cr
1195
+ - tracks/crystal/exercises/react/src/react.cr
1171
1196
  - tracks/crystal/exercises/rna-transcription/spec/rna_transcription_spec.cr
1172
1197
  - tracks/crystal/exercises/rna-transcription/src/example.cr
1198
+ - tracks/crystal/exercises/rna-transcription/src/rna_transcription.cr
1173
1199
  - tracks/crystal/exercises/roman-numerals/spec/roman_numerals_spec.cr
1174
1200
  - tracks/crystal/exercises/roman-numerals/src/example.cr
1201
+ - tracks/crystal/exercises/roman-numerals/src/roman_numerals.cr
1175
1202
  - tracks/crystal/exercises/sieve/spec/sieve_spec.cr
1176
1203
  - tracks/crystal/exercises/sieve/src/example.cr
1204
+ - tracks/crystal/exercises/sieve/src/sieve.cr
1177
1205
  - tracks/crystal/img/icon.png
1178
1206
  - tracks/crystal/src/generator/exercises/acronym.cr
1179
1207
  - tracks/crystal/src/generator/exercises/binary.cr
1208
+ - tracks/crystal/src/generator/exercises/difference_of_squares.cr
1180
1209
  - tracks/crystal/src/generator/exercises/exercise_generator.cr
1181
1210
  - tracks/crystal/src/generator/exercises/exercise_test_case.cr
1182
1211
  - tracks/crystal/src/generator/exercises/forth.cr
@@ -3446,6 +3475,11 @@ files:
3446
3475
  - tracks/java/exercises/beer-song/src/example/java/BeerSong.java
3447
3476
  - tracks/java/exercises/beer-song/src/main/java/BeerSong.java
3448
3477
  - tracks/java/exercises/beer-song/src/test/java/BeerSongTest.java
3478
+ - tracks/java/exercises/binary-search-tree/build.gradle
3479
+ - tracks/java/exercises/binary-search-tree/src/example/java/BST.java
3480
+ - tracks/java/exercises/binary-search-tree/src/main/java/.keep
3481
+ - tracks/java/exercises/binary-search-tree/src/test/java/.keep
3482
+ - tracks/java/exercises/binary-search-tree/src/test/java/BSTTest.java
3449
3483
  - tracks/java/exercises/binary/build.gradle
3450
3484
  - tracks/java/exercises/binary/src/example/java/Binary.java
3451
3485
  - tracks/java/exercises/binary/src/main/java/.keep
@@ -3546,6 +3580,10 @@ files:
3546
3580
  - tracks/java/exercises/prime-factors/src/example/java/PrimeFactors.java
3547
3581
  - tracks/java/exercises/prime-factors/src/main/java/.keep
3548
3582
  - tracks/java/exercises/prime-factors/src/test/java/PrimeFactorsTest.java
3583
+ - tracks/java/exercises/pythagorean-triplet/build.gradle
3584
+ - tracks/java/exercises/pythagorean-triplet/src/example/java/PythagoreanTriplet.java
3585
+ - tracks/java/exercises/pythagorean-triplet/src/main/java/PythagoreanTriplet.java
3586
+ - tracks/java/exercises/pythagorean-triplet/src/test/java/PythagoreanTripletTest.java
3549
3587
  - tracks/java/exercises/queen-attack/build.gradle
3550
3588
  - tracks/java/exercises/queen-attack/src/example/java/BoardCoordinate.java
3551
3589
  - tracks/java/exercises/queen-attack/src/example/java/QueenAttackCalculator.java
@@ -5180,6 +5218,8 @@ files:
5180
5218
  - tracks/php/exercises/robot-name/robot-name_test.php
5181
5219
  - tracks/php/exercises/roman-numerals/example.php
5182
5220
  - tracks/php/exercises/roman-numerals/roman-numerals_test.php
5221
+ - tracks/php/exercises/sieve/example.php
5222
+ - tracks/php/exercises/sieve/sieve_test.php
5183
5223
  - tracks/php/exercises/space-age/example.php
5184
5224
  - tracks/php/exercises/space-age/space-age_test.php
5185
5225
  - tracks/php/exercises/triangle/example.php
@@ -5630,6 +5670,7 @@ files:
5630
5670
  - tracks/ruby/bin/local-status-check
5631
5671
  - tracks/ruby/bin/setup-git-hoooks
5632
5672
  - tracks/ruby/config.json
5673
+ - tracks/ruby/docs/24pullrequests.md
5633
5674
  - tracks/ruby/docs/ABOUT.md
5634
5675
  - tracks/ruby/docs/INSTALLATION.md
5635
5676
  - tracks/ruby/docs/LEARNING.md
@@ -6170,9 +6211,11 @@ files:
6170
6211
  - tracks/scala/exercises/atbash-cipher/example.scala
6171
6212
  - tracks/scala/exercises/atbash-cipher/src/main/scala/.keep
6172
6213
  - tracks/scala/exercises/atbash-cipher/src/test/scala/atbash_test.scala
6214
+ - tracks/scala/exercises/bank-account/HINTS.md
6173
6215
  - tracks/scala/exercises/bank-account/build.sbt
6174
6216
  - tracks/scala/exercises/bank-account/example.scala
6175
6217
  - tracks/scala/exercises/bank-account/src/main/scala/.keep
6218
+ - tracks/scala/exercises/bank-account/src/main/scala/BankAccount.scala
6176
6219
  - tracks/scala/exercises/bank-account/src/test/scala/BankAccountTest.scala
6177
6220
  - tracks/scala/exercises/binary-search-tree/build.sbt
6178
6221
  - tracks/scala/exercises/binary-search-tree/example.scala
@@ -6248,10 +6291,12 @@ files:
6248
6291
  - tracks/scala/exercises/grains/example.scala
6249
6292
  - tracks/scala/exercises/grains/src/main/scala/.keep
6250
6293
  - tracks/scala/exercises/grains/src/test/scala/grains_test.scala
6294
+ - tracks/scala/exercises/hamming/HINTS.md
6251
6295
  - tracks/scala/exercises/hamming/build.sbt
6252
6296
  - tracks/scala/exercises/hamming/example.scala
6253
6297
  - tracks/scala/exercises/hamming/src/main/scala/.keep
6254
6298
  - tracks/scala/exercises/hamming/src/test/scala/hamming_test.scala
6299
+ - tracks/scala/exercises/hello-world/HINTS.md
6255
6300
  - tracks/scala/exercises/hello-world/build.sbt
6256
6301
  - tracks/scala/exercises/hello-world/example.scala
6257
6302
  - tracks/scala/exercises/hello-world/src/main/scala/.keep
@@ -6305,6 +6350,7 @@ files:
6305
6350
  - tracks/scala/exercises/nth-prime/example.scala
6306
6351
  - tracks/scala/exercises/nth-prime/src/main/scala/.keep
6307
6352
  - tracks/scala/exercises/nth-prime/src/test/scala/PrimeTest.scala
6353
+ - tracks/scala/exercises/nucleotide-count/HINTS.md
6308
6354
  - tracks/scala/exercises/nucleotide-count/build.sbt
6309
6355
  - tracks/scala/exercises/nucleotide-count/example.scala
6310
6356
  - tracks/scala/exercises/nucleotide-count/src/main/scala/.keep