trackler 2.2.1.159 → 2.2.1.160

Sign up to get free protection for your applications and to get access to all the features.
Files changed (293) hide show
  1. checksums.yaml +4 -4
  2. data/lib/trackler/version.rb +1 -1
  3. data/tracks/bash/config/maintainers.json +16 -15
  4. data/tracks/bash/config.json +111 -103
  5. data/tracks/c/config/maintainers.json +14 -14
  6. data/tracks/c/config.json +263 -242
  7. data/tracks/ceylon/config/maintainers.json +8 -8
  8. data/tracks/ceylon/config.json +30 -32
  9. data/tracks/cfml/config/maintainers.json +6 -4
  10. data/tracks/cfml/config.json +145 -92
  11. data/tracks/common-lisp/config/maintainers.json +26 -26
  12. data/tracks/common-lisp/config.json +152 -149
  13. data/tracks/cpp/config/maintainers.json +11 -11
  14. data/tracks/cpp/config.json +162 -161
  15. data/tracks/dart/config/maintainers.json +21 -17
  16. data/tracks/dart/config.json +57 -57
  17. data/tracks/delphi/config.json +1 -0
  18. data/tracks/delphi/docs/ABOUT.md +9 -6
  19. data/tracks/ecmascript/config/maintainers.json +11 -11
  20. data/tracks/ecmascript/config.json +563 -544
  21. data/tracks/ecmascript/exercises/accumulate/package.json +1 -1
  22. data/tracks/ecmascript/exercises/acronym/package.json +1 -1
  23. data/tracks/ecmascript/exercises/all-your-base/package.json +1 -1
  24. data/tracks/ecmascript/exercises/allergies/package.json +1 -1
  25. data/tracks/ecmascript/exercises/alphametics/package.json +1 -1
  26. data/tracks/ecmascript/exercises/anagram/package.json +1 -1
  27. data/tracks/ecmascript/exercises/armstrong-numbers/package.json +1 -1
  28. data/tracks/ecmascript/exercises/atbash-cipher/package.json +1 -1
  29. data/tracks/ecmascript/exercises/beer-song/package.json +1 -1
  30. data/tracks/ecmascript/exercises/binary/package.json +1 -1
  31. data/tracks/ecmascript/exercises/binary-search/package.json +1 -1
  32. data/tracks/ecmascript/exercises/binary-search-tree/package.json +1 -1
  33. data/tracks/ecmascript/exercises/bob/package.json +1 -1
  34. data/tracks/ecmascript/exercises/bowling/package.json +1 -1
  35. data/tracks/ecmascript/exercises/bracket-push/package.json +1 -1
  36. data/tracks/ecmascript/exercises/change/package.json +1 -1
  37. data/tracks/ecmascript/exercises/circular-buffer/package.json +1 -1
  38. data/tracks/ecmascript/exercises/clock/package.json +1 -1
  39. data/tracks/ecmascript/exercises/collatz-conjecture/package.json +1 -1
  40. data/tracks/ecmascript/exercises/complex-numbers/package.json +1 -1
  41. data/tracks/ecmascript/exercises/connect/package.json +1 -1
  42. data/tracks/ecmascript/exercises/crypto-square/package.json +1 -1
  43. data/tracks/ecmascript/exercises/custom-set/package.json +1 -1
  44. data/tracks/ecmascript/exercises/diamond/package.json +1 -1
  45. data/tracks/ecmascript/exercises/difference-of-squares/package.json +1 -1
  46. data/tracks/ecmascript/exercises/diffie-hellman/package.json +1 -1
  47. data/tracks/ecmascript/exercises/etl/package.json +1 -1
  48. data/tracks/ecmascript/exercises/flatten-array/package.json +1 -1
  49. data/tracks/ecmascript/exercises/food-chain/package.json +1 -1
  50. data/tracks/ecmascript/exercises/gigasecond/package.json +1 -1
  51. data/tracks/ecmascript/exercises/grade-school/package.json +1 -1
  52. data/tracks/ecmascript/exercises/grains/package.json +1 -1
  53. data/tracks/ecmascript/exercises/hamming/package.json +1 -1
  54. data/tracks/ecmascript/exercises/hello-world/package.json +1 -1
  55. data/tracks/ecmascript/exercises/hexadecimal/package.json +1 -1
  56. data/tracks/ecmascript/exercises/house/package.json +1 -1
  57. data/tracks/ecmascript/exercises/isbn-verifier/package.json +1 -1
  58. data/tracks/ecmascript/exercises/isogram/package.json +1 -1
  59. data/tracks/ecmascript/exercises/kindergarten-garden/package.json +1 -1
  60. data/tracks/ecmascript/exercises/largest-series-product/package.json +1 -1
  61. data/tracks/ecmascript/exercises/leap/package.json +1 -1
  62. data/tracks/ecmascript/exercises/linked-list/package.json +1 -1
  63. data/tracks/ecmascript/exercises/list-ops/package.json +1 -1
  64. data/tracks/ecmascript/exercises/luhn/package.json +1 -1
  65. data/tracks/ecmascript/exercises/matrix/package.json +1 -1
  66. data/tracks/ecmascript/exercises/meetup/package.json +1 -1
  67. data/tracks/ecmascript/exercises/minesweeper/package.json +1 -1
  68. data/tracks/ecmascript/exercises/nth-prime/package.json +1 -1
  69. data/tracks/ecmascript/exercises/nucleotide-count/package.json +1 -1
  70. data/tracks/ecmascript/exercises/ocr-numbers/package.json +1 -1
  71. data/tracks/ecmascript/exercises/octal/package.json +1 -1
  72. data/tracks/ecmascript/exercises/palindrome-products/package.json +1 -1
  73. data/tracks/ecmascript/exercises/pangram/package.json +1 -1
  74. data/tracks/ecmascript/exercises/pascals-triangle/package.json +1 -1
  75. data/tracks/ecmascript/exercises/perfect-numbers/package.json +1 -1
  76. data/tracks/ecmascript/exercises/phone-number/package.json +1 -1
  77. data/tracks/ecmascript/exercises/pig-latin/package.json +1 -1
  78. data/tracks/ecmascript/exercises/prime-factors/package.json +1 -1
  79. data/tracks/ecmascript/exercises/protein-translation/package.json +1 -1
  80. data/tracks/ecmascript/exercises/proverb/package.json +1 -1
  81. data/tracks/ecmascript/exercises/pythagorean-triplet/package.json +1 -1
  82. data/tracks/ecmascript/exercises/queen-attack/example.js +2 -2
  83. data/tracks/ecmascript/exercises/queen-attack/package.json +1 -1
  84. data/tracks/ecmascript/exercises/raindrops/package.json +1 -1
  85. data/tracks/ecmascript/exercises/react/package.json +1 -1
  86. data/tracks/ecmascript/exercises/rectangles/package.json +1 -1
  87. data/tracks/ecmascript/exercises/rna-transcription/package.json +1 -1
  88. data/tracks/ecmascript/exercises/robot-name/package.json +1 -1
  89. data/tracks/ecmascript/exercises/robot-simulator/package.json +1 -1
  90. data/tracks/ecmascript/exercises/roman-numerals/package.json +1 -1
  91. data/tracks/ecmascript/exercises/rotational-cipher/package.json +1 -1
  92. data/tracks/ecmascript/exercises/run-length-encoding/package.json +1 -1
  93. data/tracks/ecmascript/exercises/saddle-points/package.json +1 -1
  94. data/tracks/ecmascript/exercises/say/package.json +1 -1
  95. data/tracks/ecmascript/exercises/scrabble-score/package.json +1 -1
  96. data/tracks/ecmascript/exercises/secret-handshake/package.json +1 -1
  97. data/tracks/ecmascript/exercises/series/package.json +1 -1
  98. data/tracks/ecmascript/exercises/sieve/package.json +1 -1
  99. data/tracks/ecmascript/exercises/simple-cipher/package.json +1 -1
  100. data/tracks/ecmascript/exercises/simple-linked-list/package.json +1 -1
  101. data/tracks/ecmascript/exercises/space-age/package.json +1 -1
  102. data/tracks/ecmascript/exercises/spiral-matrix/package.json +1 -1
  103. data/tracks/ecmascript/exercises/strain/package.json +1 -1
  104. data/tracks/ecmascript/exercises/sublist/package.json +1 -1
  105. data/tracks/ecmascript/exercises/sum-of-multiples/package.json +1 -1
  106. data/tracks/ecmascript/exercises/transpose/package.json +1 -1
  107. data/tracks/ecmascript/exercises/triangle/package.json +1 -1
  108. data/tracks/ecmascript/exercises/trinary/package.json +1 -1
  109. data/tracks/ecmascript/exercises/twelve-days/package.json +1 -1
  110. data/tracks/ecmascript/exercises/two-bucket/package.json +1 -1
  111. data/tracks/ecmascript/exercises/two-fer/package.json +1 -1
  112. data/tracks/ecmascript/exercises/word-count/package.json +1 -1
  113. data/tracks/ecmascript/exercises/word-search/package.json +1 -1
  114. data/tracks/ecmascript/exercises/wordy/example.js +16 -4
  115. data/tracks/ecmascript/exercises/wordy/package.json +1 -1
  116. data/tracks/ecmascript/package.json +1 -1
  117. data/tracks/elisp/config/maintainers.json +6 -6
  118. data/tracks/elisp/config.json +103 -103
  119. data/tracks/elisp/exercises/two-fer/two-fer.el +3 -3
  120. data/tracks/elm/config/maintainers.json +11 -11
  121. data/tracks/elm/config.json +171 -171
  122. data/tracks/erlang/README.md +31 -28
  123. data/tracks/erlang/config/maintainers.json +13 -7
  124. data/tracks/erlang/config.json +99 -190
  125. data/tracks/factor/config/maintainers.json +5 -5
  126. data/tracks/factor/config.json +17 -19
  127. data/tracks/fsharp/config/maintainers.json +16 -16
  128. data/tracks/fsharp/config.json +485 -469
  129. data/tracks/gnu-apl/config/maintainers.json +6 -5
  130. data/tracks/gnu-apl/config.json +46 -20
  131. data/tracks/go/config/maintainers.json +43 -32
  132. data/tracks/go/config.json +475 -457
  133. data/tracks/haskell/config/maintainers.json +26 -15
  134. data/tracks/haskell/config.json +22 -2
  135. data/tracks/idris/config/maintainers.json +6 -6
  136. data/tracks/idris/config.json +24 -35
  137. data/tracks/java/config/maintainers.json +39 -29
  138. data/tracks/java/config.json +458 -433
  139. data/tracks/javascript/config/maintainers.json +40 -40
  140. data/tracks/javascript/config.json +577 -551
  141. data/tracks/javascript/docs/LEARNING.md +1 -1
  142. data/tracks/javascript/exercises/pangram/pangram.spec.js +15 -10
  143. data/tracks/julia/REQUIRE +1 -0
  144. data/tracks/julia/config/maintainers.json +5 -5
  145. data/tracks/julia/config.json +106 -108
  146. data/tracks/kotlin/config/maintainers.json +15 -15
  147. data/tracks/kotlin/config.json +273 -257
  148. data/tracks/kotlin/exercises/accumulate/build.gradle +1 -1
  149. data/tracks/kotlin/exercises/acronym/build.gradle +1 -1
  150. data/tracks/kotlin/exercises/all-your-base/build.gradle +1 -1
  151. data/tracks/kotlin/exercises/allergies/.meta/version +1 -1
  152. data/tracks/kotlin/exercises/allergies/build.gradle +1 -1
  153. data/tracks/kotlin/exercises/anagram/build.gradle +1 -1
  154. data/tracks/kotlin/exercises/atbash-cipher/build.gradle +1 -1
  155. data/tracks/kotlin/exercises/bank-account/build.gradle +17 -17
  156. data/tracks/kotlin/exercises/beer-song/.meta/version +1 -1
  157. data/tracks/kotlin/exercises/beer-song/build.gradle +1 -1
  158. data/tracks/kotlin/exercises/binary/build.gradle +1 -1
  159. data/tracks/kotlin/exercises/binary-search/build.gradle +1 -2
  160. data/tracks/kotlin/exercises/bob/build.gradle +1 -1
  161. data/tracks/kotlin/exercises/bracket-push/build.gradle +1 -1
  162. data/tracks/kotlin/exercises/change/.meta/version +1 -1
  163. data/tracks/kotlin/exercises/change/build.gradle +1 -2
  164. data/tracks/kotlin/exercises/clock/build.gradle +1 -1
  165. data/tracks/kotlin/exercises/collatz-conjecture/build.gradle +1 -1
  166. data/tracks/kotlin/exercises/complex-numbers/build.gradle +1 -1
  167. data/tracks/kotlin/exercises/diamond/build.gradle +1 -1
  168. data/tracks/kotlin/exercises/difference-of-squares/build.gradle +1 -1
  169. data/tracks/kotlin/exercises/etl/build.gradle +1 -1
  170. data/tracks/kotlin/exercises/flatten-array/build.gradle +1 -1
  171. data/tracks/kotlin/exercises/forth/build.gradle +1 -1
  172. data/tracks/kotlin/exercises/gigasecond/build.gradle +1 -1
  173. data/tracks/kotlin/exercises/grade-school/build.gradle +1 -1
  174. data/tracks/kotlin/exercises/grains/build.gradle +1 -1
  175. data/tracks/kotlin/exercises/hamming/build.gradle +1 -1
  176. data/tracks/kotlin/exercises/hello-world/build.gradle +1 -1
  177. data/tracks/kotlin/exercises/hexadecimal/build.gradle +1 -1
  178. data/tracks/kotlin/exercises/isogram/build.gradle +1 -1
  179. data/tracks/kotlin/exercises/largest-series-product/build.gradle +1 -1
  180. data/tracks/kotlin/exercises/leap/.meta/version +1 -1
  181. data/tracks/kotlin/exercises/leap/build.gradle +1 -1
  182. data/tracks/kotlin/exercises/linked-list/build.gradle +1 -1
  183. data/tracks/kotlin/exercises/list-ops/build.gradle +1 -1
  184. data/tracks/kotlin/exercises/luhn/build.gradle +1 -1
  185. data/tracks/kotlin/exercises/meetup/.meta/version +1 -1
  186. data/tracks/kotlin/exercises/meetup/build.gradle +1 -1
  187. data/tracks/kotlin/exercises/minesweeper/build.gradle +1 -1
  188. data/tracks/kotlin/exercises/nth-prime/build.gradle +1 -1
  189. data/tracks/kotlin/exercises/nucleotide-count/build.gradle +1 -1
  190. data/tracks/kotlin/exercises/pangram/build.gradle +1 -1
  191. data/tracks/kotlin/exercises/pascals-triangle/.meta/version +1 -1
  192. data/tracks/kotlin/exercises/pascals-triangle/build.gradle +1 -1
  193. data/tracks/kotlin/exercises/perfect-numbers/build.gradle +1 -1
  194. data/tracks/kotlin/exercises/phone-number/build.gradle +1 -1
  195. data/tracks/kotlin/exercises/pig-latin/build.gradle +1 -1
  196. data/tracks/kotlin/exercises/prime-factors/build.gradle +1 -1
  197. data/tracks/kotlin/exercises/raindrops/build.gradle +1 -1
  198. data/tracks/kotlin/exercises/react/build.gradle +1 -1
  199. data/tracks/kotlin/exercises/rna-transcription/build.gradle +1 -1
  200. data/tracks/kotlin/exercises/robot-name/build.gradle +1 -1
  201. data/tracks/kotlin/exercises/robot-simulator/build.gradle +1 -1
  202. data/tracks/kotlin/exercises/roman-numerals/build.gradle +1 -1
  203. data/tracks/kotlin/exercises/rotational-cipher/.meta/version +1 -1
  204. data/tracks/kotlin/exercises/rotational-cipher/build.gradle +1 -1
  205. data/tracks/kotlin/exercises/saddle-points/build.gradle +1 -1
  206. data/tracks/kotlin/exercises/say/.meta/version +1 -1
  207. data/tracks/kotlin/exercises/say/build.gradle +1 -1
  208. data/tracks/kotlin/exercises/scrabble-score/build.gradle +1 -1
  209. data/tracks/kotlin/exercises/secret-handshake/build.gradle +1 -1
  210. data/tracks/kotlin/exercises/series/build.gradle +1 -1
  211. data/tracks/kotlin/exercises/sieve/build.gradle +1 -1
  212. data/tracks/kotlin/exercises/simple-cipher/build.gradle +1 -1
  213. data/tracks/kotlin/exercises/space-age/build.gradle +1 -1
  214. data/tracks/kotlin/exercises/spiral-matrix/build.gradle +1 -1
  215. data/tracks/kotlin/exercises/strain/build.gradle +1 -1
  216. data/tracks/kotlin/exercises/sublist/.meta/version +1 -1
  217. data/tracks/kotlin/exercises/sublist/build.gradle +1 -1
  218. data/tracks/kotlin/exercises/sum-of-multiples/build.gradle +15 -16
  219. data/tracks/kotlin/exercises/triangle/build.gradle +15 -16
  220. data/tracks/kotlin/exercises/two-fer/build.gradle +1 -1
  221. data/tracks/kotlin/exercises/word-count/build.gradle +1 -1
  222. data/tracks/lfe/config/maintainers.json +6 -6
  223. data/tracks/lfe/config.json +128 -125
  224. data/tracks/lfe/docs/LEARNING.md +1 -1
  225. data/tracks/lua/config/maintainers.json +16 -16
  226. data/tracks/lua/config.json +331 -327
  227. data/tracks/mips/config/maintainers.json +5 -5
  228. data/tracks/mips/config.json +29 -59
  229. data/tracks/nim/config/maintainers.json +8 -8
  230. data/tracks/nim/config.json +185 -127
  231. data/tracks/nim/exercises/allergies/allergies_test.nim +7 -7
  232. data/tracks/nim/exercises/allergies/example.nim +2 -2
  233. data/tracks/nim/exercises/difference-of-squares/difference_of_squares_test.nim +4 -4
  234. data/tracks/nim/exercises/difference-of-squares/example.nim +3 -3
  235. data/tracks/nim/exercises/gigasecond/example.nim +1 -1
  236. data/tracks/nim/exercises/gigasecond/gigasecond_test.nim +5 -5
  237. data/tracks/nim/exercises/nucleotide-count/example.nim +1 -1
  238. data/tracks/nim/exercises/nucleotide-count/nucleotide_count_test.nim +6 -6
  239. data/tracks/nim/exercises/pangram/example.nim +1 -1
  240. data/tracks/nim/exercises/pangram/pangram_test.nim +11 -11
  241. data/tracks/nim/exercises/triangle/example.nim +4 -4
  242. data/tracks/nim/exercises/triangle/triangle_test.nim +14 -14
  243. data/tracks/nim/exercises/word-count/HINT.md +8 -0
  244. data/tracks/nim/exercises/word-count/example.nim +8 -15
  245. data/tracks/nim/exercises/word-count/word_count_test.nim +63 -55
  246. data/tracks/perl6/Dockerfile +1 -1
  247. data/tracks/perl6/config/maintainers.json +8 -8
  248. data/tracks/perl6/config.json +72 -127
  249. data/tracks/powershell/.gitignore +2 -1
  250. data/tracks/powershell/config/maintainers.json +8 -8
  251. data/tracks/powershell/config.json +54 -37
  252. data/tracks/powershell/exercises/reverse-string/.version +1 -0
  253. data/tracks/powershell/exercises/reverse-string/README.md +13 -0
  254. data/tracks/powershell/exercises/reverse-string/ReverseString.example.ps1 +21 -0
  255. data/tracks/powershell/exercises/reverse-string/ReverseString.ps1 +9 -0
  256. data/tracks/powershell/exercises/reverse-string/ReverseString.tests.ps1 +21 -0
  257. data/tracks/powershell/exercises/sum-of-multiples/.version +1 -0
  258. data/tracks/powershell/exercises/sum-of-multiples/README.md +15 -0
  259. data/tracks/powershell/exercises/sum-of-multiples/SumOfMultiples.example.ps1 +20 -0
  260. data/tracks/powershell/exercises/sum-of-multiples/SumOfMultiples.ps1 +9 -0
  261. data/tracks/powershell/exercises/sum-of-multiples/SumOfMultiples.tests.ps1 +29 -0
  262. data/tracks/python/config/maintainers.json +17 -17
  263. data/tracks/python/config.json +331 -283
  264. data/tracks/python/exercises/diffie-hellman/diffie_hellman_test.py +16 -47
  265. data/tracks/r/config/maintainers.json +16 -16
  266. data/tracks/r/config.json +128 -117
  267. data/tracks/racket/config/maintainers.json +16 -16
  268. data/tracks/racket/config.json +106 -102
  269. data/tracks/reasonml/config/maintainers.json +1 -1
  270. data/tracks/reasonml/config.json +37 -23
  271. data/tracks/reasonml/exercises/bob/README.md +29 -0
  272. data/tracks/reasonml/exercises/bob/__tests__/Bob_test.re +103 -0
  273. data/tracks/reasonml/exercises/bob/bsconfig.json +30 -0
  274. data/tracks/reasonml/exercises/bob/package-lock.json +5855 -0
  275. data/tracks/reasonml/exercises/bob/package.json +20 -0
  276. data/tracks/reasonml/exercises/bob/src/Example.re +41 -0
  277. data/tracks/reasonml/exercises/hello-world/src/{HelloWorld.re → Example.re} +0 -0
  278. data/tracks/reasonml/exercises/leap/src/{Leap.re → Example.re} +0 -0
  279. data/tracks/reasonml/exercises/rna-transcription/__tests__/RnaTranscription_test.re +24 -0
  280. data/tracks/reasonml/exercises/rna-transcription/bsconfig.json +30 -0
  281. data/tracks/reasonml/exercises/rna-transcription/package.json +20 -0
  282. data/tracks/reasonml/exercises/rna-transcription/src/Example.re +14 -0
  283. data/tracks/reasonml/exercises/space-age/src/{Space_age.re → Example.re} +0 -0
  284. data/tracks/scala/config/maintainers.json +22 -10
  285. data/tracks/scala/config.json +362 -350
  286. data/tracks/scala/docs/ABOUT.md +7 -2
  287. data/tracks/scheme/config/maintainers.json +11 -11
  288. data/tracks/scheme/config.json +72 -72
  289. data/tracks/typescript/config/maintainers.json +15 -15
  290. data/tracks/typescript/config.json +382 -362
  291. data/tracks/vimscript/config/maintainers.json +11 -11
  292. data/tracks/vimscript/config.json +41 -89
  293. metadata +27 -5
@@ -1,366 +1,374 @@
1
1
  {
2
+ "language": "Common Lisp",
2
3
  "active": true,
4
+ "blurb": "",
5
+ "foregone": [
6
+ "accumulate",
7
+ "bank-account"
8
+ ],
3
9
  "exercises": [
4
10
  {
11
+ "slug": "hello-world",
12
+ "uuid": "d4af6cfa-d468-15b5-dcdf-7d717ddf6556",
5
13
  "core": true,
14
+ "unlocked_by": null,
6
15
  "difficulty": 1,
7
- "slug": "hello-world",
8
16
  "topics": [
9
17
  "strings"
10
- ],
11
- "unlocked_by": null,
12
- "uuid": "d4af6cfa-d468-15b5-dcdf-7d717ddf6556"
18
+ ]
13
19
  },
14
20
  {
21
+ "slug": "acronym",
22
+ "uuid": "a999c375-f2e2-4d47-a9e2-5af923cd46d1",
15
23
  "core": false,
24
+ "unlocked_by": null,
16
25
  "difficulty": 1,
17
- "slug": "acronym",
18
26
  "topics": [
19
27
  "strings",
20
28
  "transforming"
21
- ],
22
- "unlocked_by": null,
23
- "uuid": "a999c375-f2e2-4d47-a9e2-5af923cd46d1"
29
+ ]
24
30
  },
25
31
  {
32
+ "slug": "hamming",
33
+ "uuid": "c029678b-9b9f-4fb2-958f-3a118efa16a9",
26
34
  "core": true,
35
+ "unlocked_by": null,
27
36
  "difficulty": 1,
28
- "slug": "hamming",
29
37
  "topics": [
30
38
  "control_flow_conditionals",
31
39
  "control_flow_loops",
32
40
  "equality",
33
41
  "filtering",
34
42
  "strings"
35
- ],
36
- "unlocked_by": null,
37
- "uuid": "c029678b-9b9f-4fb2-958f-3a118efa16a9"
43
+ ]
38
44
  },
39
45
  {
46
+ "slug": "sublist",
47
+ "uuid": "428e5b28-31b6-4c84-8eae-d7753d45efc1",
40
48
  "core": false,
49
+ "unlocked_by": null,
41
50
  "difficulty": 1,
42
- "slug": "sublist",
43
51
  "topics": [
44
52
  "lists"
45
- ],
46
- "unlocked_by": null,
47
- "uuid": "428e5b28-31b6-4c84-8eae-d7753d45efc1"
53
+ ]
48
54
  },
49
55
  {
56
+ "slug": "leap",
57
+ "uuid": "8bfa54a8-4ee6-4e6e-b286-7fc8c70b9e9f",
50
58
  "core": true,
59
+ "unlocked_by": null,
51
60
  "difficulty": 1,
52
- "slug": "leap",
53
61
  "topics": [
54
62
  "control_flow_conditionals",
55
63
  "equality",
56
64
  "integers",
57
65
  "logic"
58
- ],
59
- "unlocked_by": null,
60
- "uuid": "8bfa54a8-4ee6-4e6e-b286-7fc8c70b9e9f"
66
+ ]
61
67
  },
62
68
  {
69
+ "slug": "grains",
70
+ "uuid": "eb3a92bf-0748-4406-ba67-9e27e367ae45",
63
71
  "core": false,
72
+ "unlocked_by": null,
64
73
  "difficulty": 1,
65
- "slug": "grains",
66
74
  "topics": [
67
75
  "integers",
68
76
  "mathematics",
69
77
  "variables"
70
- ],
71
- "unlocked_by": null,
72
- "uuid": "eb3a92bf-0748-4406-ba67-9e27e367ae45"
78
+ ]
73
79
  },
74
80
  {
81
+ "slug": "gigasecond",
82
+ "uuid": "25506c31-7274-402a-95e1-8475fcdb34e1",
75
83
  "core": false,
84
+ "unlocked_by": null,
76
85
  "difficulty": 1,
77
- "slug": "gigasecond",
78
86
  "topics": [
79
87
  "date",
80
88
  "integers",
81
89
  "time",
82
90
  "transforming",
83
91
  "variables"
84
- ],
85
- "unlocked_by": null,
86
- "uuid": "25506c31-7274-402a-95e1-8475fcdb34e1"
92
+ ]
87
93
  },
88
94
  {
95
+ "slug": "bob",
96
+ "uuid": "1e6c8365-775d-4a4f-8fc7-e376912d7912",
89
97
  "core": true,
98
+ "unlocked_by": null,
90
99
  "difficulty": 1,
91
- "slug": "bob",
92
100
  "topics": [
93
101
  "control_flow_conditionals",
94
102
  "parsing",
95
103
  "strings"
96
- ],
97
- "unlocked_by": null,
98
- "uuid": "1e6c8365-775d-4a4f-8fc7-e376912d7912"
104
+ ]
99
105
  },
100
106
  {
107
+ "slug": "rna-transcription",
108
+ "uuid": "5c215cbf-a575-42ad-9b3f-892410a63077",
101
109
  "core": false,
110
+ "unlocked_by": null,
102
111
  "difficulty": 1,
103
- "slug": "rna-transcription",
104
112
  "topics": [
105
113
  "control_flow_conditionals",
106
114
  "strings",
107
115
  "transforming"
108
- ],
109
- "unlocked_by": null,
110
- "uuid": "5c215cbf-a575-42ad-9b3f-892410a63077"
116
+ ]
111
117
  },
112
118
  {
119
+ "slug": "robot-name",
120
+ "uuid": "79a4a35c-40d6-4e2d-92a1-005c40b4f4c5",
113
121
  "core": false,
122
+ "unlocked_by": null,
114
123
  "difficulty": 1,
115
- "slug": "robot-name",
116
124
  "topics": [
117
125
  "randomness",
118
126
  "strings",
119
127
  "variables"
120
- ],
121
- "unlocked_by": null,
122
- "uuid": "79a4a35c-40d6-4e2d-92a1-005c40b4f4c5"
128
+ ]
123
129
  },
124
130
  {
131
+ "slug": "word-count",
132
+ "uuid": "424ed7aa-24f3-4aec-9620-3cc9dc224166",
125
133
  "core": false,
134
+ "unlocked_by": null,
126
135
  "difficulty": 1,
127
- "slug": "word-count",
128
136
  "topics": [
129
137
  "control_flow_conditionals",
130
138
  "control_flow_loops",
131
139
  "filtering",
132
140
  "strings"
133
- ],
134
- "unlocked_by": null,
135
- "uuid": "424ed7aa-24f3-4aec-9620-3cc9dc224166"
141
+ ]
136
142
  },
137
143
  {
144
+ "slug": "raindrops",
145
+ "uuid": "b5345fcb-d4cc-4ea0-b1b9-f1b0cb92f05c",
138
146
  "core": false,
147
+ "unlocked_by": null,
139
148
  "difficulty": 1,
140
- "slug": "raindrops",
141
149
  "topics": [
142
150
  "control_flow_conditionals",
143
151
  "filtering",
144
152
  "integers"
145
- ],
146
- "unlocked_by": null,
147
- "uuid": "b5345fcb-d4cc-4ea0-b1b9-f1b0cb92f05c"
153
+ ]
148
154
  },
149
155
  {
156
+ "slug": "grade-school",
157
+ "uuid": "841641f2-16ba-4dc5-af1b-ffae5052853a",
150
158
  "core": false,
159
+ "unlocked_by": null,
151
160
  "difficulty": 1,
152
- "slug": "grade-school",
153
161
  "topics": [
154
162
  "interfaces",
155
163
  "lists",
156
164
  "maps",
157
165
  "sorting",
158
166
  "variables"
159
- ],
160
- "unlocked_by": null,
161
- "uuid": "841641f2-16ba-4dc5-af1b-ffae5052853a"
167
+ ]
162
168
  },
163
169
  {
170
+ "slug": "phone-number",
171
+ "uuid": "d1d86b51-a3f4-4276-a18c-6db54bc8dfcc",
164
172
  "core": false,
173
+ "unlocked_by": null,
165
174
  "difficulty": 1,
166
- "slug": "phone-number",
167
175
  "topics": [
168
176
  "interfaces",
169
177
  "parsing",
170
178
  "strings"
171
- ],
172
- "unlocked_by": null,
173
- "uuid": "d1d86b51-a3f4-4276-a18c-6db54bc8dfcc"
179
+ ]
174
180
  },
175
181
  {
182
+ "slug": "etl",
183
+ "uuid": "52ac3dd0-8803-445f-93cf-e984b59d6702",
176
184
  "core": false,
185
+ "unlocked_by": null,
177
186
  "difficulty": 1,
178
- "slug": "etl",
179
187
  "topics": [
180
188
  "control_flow_loops",
181
189
  "maps",
182
190
  "transforming"
183
- ],
184
- "unlocked_by": null,
185
- "uuid": "52ac3dd0-8803-445f-93cf-e984b59d6702"
191
+ ]
186
192
  },
187
193
  {
194
+ "slug": "beer-song",
195
+ "uuid": "5c6f22e7-109c-4d9e-b8bf-4ea63b2823ca",
188
196
  "core": true,
197
+ "unlocked_by": null,
189
198
  "difficulty": 1,
190
- "slug": "beer-song",
191
199
  "topics": [
192
200
  "control_flow_conditionals",
193
201
  "control_flow_loops",
194
202
  "integers",
195
203
  "text_formatting"
196
- ],
197
- "unlocked_by": null,
198
- "uuid": "5c6f22e7-109c-4d9e-b8bf-4ea63b2823ca"
204
+ ]
199
205
  },
200
206
  {
207
+ "slug": "space-age",
208
+ "uuid": "d24cf0ea-876f-4775-969b-99970425e413",
201
209
  "core": false,
210
+ "unlocked_by": null,
202
211
  "difficulty": 1,
203
- "slug": "space-age",
204
212
  "topics": [
205
213
  "floating_point_numbers",
206
214
  "interfaces",
207
215
  "transforming"
208
- ],
209
- "unlocked_by": null,
210
- "uuid": "d24cf0ea-876f-4775-969b-99970425e413"
216
+ ]
211
217
  },
212
218
  {
219
+ "slug": "anagram",
220
+ "uuid": "b9fd0f13-966c-4085-ac9d-ed49a96ac0bf",
213
221
  "core": false,
222
+ "unlocked_by": null,
214
223
  "difficulty": 1,
215
- "slug": "anagram",
216
224
  "topics": [
217
225
  "equality",
218
226
  "filtering",
219
227
  "strings"
220
- ],
221
- "unlocked_by": null,
222
- "uuid": "b9fd0f13-966c-4085-ac9d-ed49a96ac0bf"
228
+ ]
223
229
  },
224
230
  {
231
+ "slug": "nucleotide-count",
232
+ "uuid": "b2ad38c2-2962-4a47-9b14-20ca262ebff6",
225
233
  "core": false,
234
+ "unlocked_by": null,
226
235
  "difficulty": 1,
227
- "slug": "nucleotide-count",
228
236
  "topics": [
229
237
  "control_flow_loops",
230
238
  "maps",
231
239
  "sorting",
232
240
  "strings"
233
- ],
234
- "unlocked_by": null,
235
- "uuid": "b2ad38c2-2962-4a47-9b14-20ca262ebff6"
241
+ ]
236
242
  },
237
243
  {
244
+ "slug": "collatz-conjecture",
245
+ "uuid": "b3ad38c2-2962-4b47-9b14-20ca262ebff6",
238
246
  "core": false,
247
+ "unlocked_by": null,
239
248
  "difficulty": 1,
240
- "slug": "collatz-conjecture",
241
249
  "topics": [
242
250
  "integer",
243
251
  "mathematics",
244
252
  "recursivity"
245
- ],
246
- "unlocked_by": null,
247
- "uuid": "b3ad38c2-2962-4b47-9b14-20ca262ebff6"
253
+ ]
248
254
  },
249
255
  {
256
+ "slug": "perfect-numbers",
257
+ "uuid": "b3ad38c2-2962-4b47-9b15-15ca262ebff6",
250
258
  "core": false,
259
+ "unlocked_by": null,
251
260
  "difficulty": 1,
252
- "slug": "perfect-numbers",
253
261
  "topics": [
254
262
  "number_theory"
255
- ],
256
- "unlocked_by": null,
257
- "uuid": "b3ad38c2-2962-4b47-9b15-15ca262ebff6"
263
+ ]
258
264
  },
259
265
  {
266
+ "slug": "isogram",
267
+ "uuid": "89ea51d0-3f7e-4e07-8e2b-4dde4c76608b",
260
268
  "core": false,
269
+ "unlocked_by": null,
261
270
  "difficulty": 1,
262
- "slug": "isogram",
263
271
  "topics": [
264
272
  "strings"
265
- ],
266
- "unlocked_by": null,
267
- "uuid": "89ea51d0-3f7e-4e07-8e2b-4dde4c76608b"
273
+ ]
268
274
  },
269
275
  {
276
+ "slug": "meetup",
277
+ "uuid": "6c702aa9-70f3-41d0-bc76-4323a08f8fbf",
270
278
  "core": false,
279
+ "unlocked_by": null,
271
280
  "difficulty": 1,
272
- "slug": "meetup",
273
281
  "topics": [
274
282
  "control_flow_conditionals",
275
283
  "dates",
276
284
  "filtering"
277
- ],
278
- "unlocked_by": null,
279
- "uuid": "6c702aa9-70f3-41d0-bc76-4323a08f8fbf"
285
+ ]
280
286
  },
281
287
  {
288
+ "slug": "triangle",
289
+ "uuid": "bd2a55e3-9874-4d2e-ad6f-4b2f8c5e2e0a",
282
290
  "core": false,
291
+ "unlocked_by": null,
283
292
  "difficulty": 1,
284
- "slug": "triangle",
285
293
  "topics": [
286
294
  "control_flow_conditionals",
287
295
  "filtering",
288
296
  "floating_point_numbers",
289
297
  "integers",
290
298
  "mathematics"
291
- ],
292
- "unlocked_by": null,
293
- "uuid": "bd2a55e3-9874-4d2e-ad6f-4b2f8c5e2e0a"
299
+ ]
294
300
  },
295
301
  {
302
+ "slug": "difference-of-squares",
303
+ "uuid": "71804ace-6ca1-46b9-bf06-ff57faef7afa",
296
304
  "core": false,
305
+ "unlocked_by": null,
297
306
  "difficulty": 1,
298
- "slug": "difference-of-squares",
299
307
  "topics": [
300
308
  "control_flow_loops",
301
309
  "floating_point_numbers",
302
310
  "integers",
303
311
  "mathematics"
304
- ],
305
- "unlocked_by": null,
306
- "uuid": "71804ace-6ca1-46b9-bf06-ff57faef7afa"
312
+ ]
307
313
  },
308
314
  {
315
+ "slug": "roman-numerals",
316
+ "uuid": "150d3608-d234-4c9e-ab6d-2d91f8a2c855",
309
317
  "core": false,
318
+ "unlocked_by": null,
310
319
  "difficulty": 1,
311
- "slug": "roman-numerals",
312
320
  "topics": [
313
321
  "control_flow_conditionals",
314
322
  "control_flow_loops",
315
323
  "integers",
316
324
  "strings",
317
325
  "text_formatting"
318
- ],
319
- "unlocked_by": null,
320
- "uuid": "150d3608-d234-4c9e-ab6d-2d91f8a2c855"
326
+ ]
321
327
  },
322
328
  {
329
+ "slug": "scrabble-score",
330
+ "uuid": "f350f23d-72f8-4f47-a0f5-fe3c00f3f5f1",
323
331
  "core": false,
332
+ "unlocked_by": null,
324
333
  "difficulty": 1,
325
- "slug": "scrabble-score",
326
334
  "topics": [
327
335
  "control_flow_loops",
328
336
  "games",
329
337
  "maps",
330
338
  "strings"
331
- ],
332
- "unlocked_by": null,
333
- "uuid": "f350f23d-72f8-4f47-a0f5-fe3c00f3f5f1"
339
+ ]
334
340
  },
335
341
  {
342
+ "slug": "binary",
343
+ "uuid": "005ff8b4-9df8-4b82-b919-a0c67356d654",
336
344
  "core": false,
345
+ "unlocked_by": null,
337
346
  "difficulty": 1,
338
- "slug": "binary",
339
347
  "topics": [
340
348
  "bitwise_operations",
341
349
  "control_flow_conditionals",
342
350
  "integers"
343
- ],
344
- "unlocked_by": null,
345
- "uuid": "005ff8b4-9df8-4b82-b919-a0c67356d654"
351
+ ]
346
352
  },
347
353
  {
354
+ "slug": "allergies",
355
+ "uuid": "d2fd481e-7156-452d-976d-ea6df220fa18",
348
356
  "core": false,
357
+ "unlocked_by": null,
349
358
  "difficulty": 1,
350
- "slug": "allergies",
351
359
  "topics": [
352
360
  "bitwise_operations",
353
361
  "control_flow_conditionals",
354
362
  "integers",
355
363
  "text_formatting"
356
- ],
357
- "unlocked_by": null,
358
- "uuid": "d2fd481e-7156-452d-976d-ea6df220fa18"
364
+ ]
359
365
  },
360
366
  {
367
+ "slug": "sieve",
368
+ "uuid": "40f3b911-0739-4fec-95cc-cfab99788c19",
361
369
  "core": true,
370
+ "unlocked_by": null,
362
371
  "difficulty": 1,
363
- "slug": "sieve",
364
372
  "topics": [
365
373
  "control_flow_conditionals",
366
374
  "control_flow_loops",
@@ -368,40 +376,40 @@
368
376
  "integers",
369
377
  "maps",
370
378
  "mathematics"
371
- ],
372
- "unlocked_by": null,
373
- "uuid": "40f3b911-0739-4fec-95cc-cfab99788c19"
379
+ ]
374
380
  },
375
381
  {
382
+ "slug": "strain",
383
+ "uuid": "1a81aac9-9128-48ab-aa6a-4d981d6eb602",
376
384
  "core": false,
385
+ "unlocked_by": null,
377
386
  "difficulty": 1,
378
- "slug": "strain",
379
387
  "topics": [
380
388
  "control_flow_conditionals",
381
389
  "control_flow_loops",
382
390
  "filtering",
383
391
  "sequences"
384
- ],
385
- "unlocked_by": null,
386
- "uuid": "1a81aac9-9128-48ab-aa6a-4d981d6eb602"
392
+ ]
387
393
  },
388
394
  {
395
+ "slug": "atbash-cipher",
396
+ "uuid": "71a1fdb6-414e-452c-8d24-03f2a5621e62",
389
397
  "core": false,
398
+ "unlocked_by": null,
390
399
  "difficulty": 1,
391
- "slug": "atbash-cipher",
392
400
  "topics": [
393
401
  "control_flow_conditionals",
394
402
  "control_flow_loops",
395
403
  "sequences",
396
404
  "transforming"
397
- ],
398
- "unlocked_by": null,
399
- "uuid": "71a1fdb6-414e-452c-8d24-03f2a5621e62"
405
+ ]
400
406
  },
401
407
  {
408
+ "slug": "prime-factors",
409
+ "uuid": "cc138097-7c0f-44b4-b07e-2a24f6475986",
402
410
  "core": false,
411
+ "unlocked_by": null,
403
412
  "difficulty": 1,
404
- "slug": "prime-factors",
405
413
  "topics": [
406
414
  "control_flow_conditionals",
407
415
  "control_flow_loops",
@@ -409,51 +417,46 @@
409
417
  "integers",
410
418
  "maps",
411
419
  "mathematics"
412
- ],
413
- "unlocked_by": null,
414
- "uuid": "cc138097-7c0f-44b4-b07e-2a24f6475986"
420
+ ]
415
421
  },
416
422
  {
423
+ "slug": "crypto-square",
424
+ "uuid": "fcfc6b44-597d-4a03-bf02-6be5c8f7ae4e",
417
425
  "core": false,
426
+ "unlocked_by": null,
418
427
  "difficulty": 1,
419
- "slug": "crypto-square",
420
428
  "topics": [
421
429
  "arrays",
422
430
  "control_flow_conditionals",
423
431
  "control_flow_loops",
424
432
  "strings",
425
433
  "transforming"
426
- ],
427
- "unlocked_by": null,
428
- "uuid": "fcfc6b44-597d-4a03-bf02-6be5c8f7ae4e"
434
+ ]
429
435
  },
430
436
  {
437
+ "slug": "trinary",
438
+ "uuid": "ff3eb2c5-c7ce-4352-805c-e01d4fb85aa6",
431
439
  "core": false,
440
+ "unlocked_by": null,
432
441
  "difficulty": 1,
433
- "slug": "trinary",
434
442
  "topics": [
435
443
  "control_flow_conditionals",
436
444
  "integers",
437
445
  "mathematics"
438
- ],
439
- "unlocked_by": null,
440
- "uuid": "ff3eb2c5-c7ce-4352-805c-e01d4fb85aa6"
446
+ ]
441
447
  },
442
448
  {
443
- "difficulty": 1,
444
449
  "slug": "pascals-triangle",
450
+ "uuid": "34bc4fbe-f148-4519-a699-91efed432703",
451
+ "core": false,
452
+ "unlocked_by": null,
453
+ "difficulty": 1,
445
454
  "topics": [
446
455
  "control_flow_loops",
447
456
  "integers",
448
457
  "mathematics",
449
458
  "sequences"
450
- ],
451
- "uuid": "34bc4fbe-f148-4519-a699-91efed432703"
459
+ ]
452
460
  }
453
- ],
454
- "foregone": [
455
- "accumulate",
456
- "bank-account"
457
- ],
458
- "language": "Common Lisp"
461
+ ]
459
462
  }
@@ -2,24 +2,24 @@
2
2
  "docs_url": "https://github.com/exercism/docs/blob/master/maintaining-a-track/maintainer-configuration.md",
3
3
  "maintainers": [
4
4
  {
5
- "alumnus": false,
6
- "avatar_url": null,
7
- "bio": null,
8
5
  "github_username": "patricksjackson",
6
+ "alumnus": false,
7
+ "show_on_website": false,
8
+ "name": null,
9
9
  "link_text": null,
10
10
  "link_url": null,
11
- "name": null,
12
- "show_on_website": false
11
+ "avatar_url": null,
12
+ "bio": null
13
13
  },
14
14
  {
15
- "alumnus": false,
16
- "avatar_url": null,
17
- "bio": null,
18
15
  "github_username": "LegalizeAdulthood",
16
+ "alumnus": false,
17
+ "show_on_website": false,
18
+ "name": null,
19
19
  "link_text": null,
20
20
  "link_url": null,
21
- "name": null,
22
- "show_on_website": false
21
+ "avatar_url": null,
22
+ "bio": null
23
23
  }
24
24
  ]
25
- }
25
+ }