trackler 2.2.1.4 → 2.2.1.5
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.
- checksums.yaml +4 -4
- data/lib/trackler/version.rb +1 -1
- data/tracks/bash/config.json +10 -0
- data/tracks/bash/exercises/error-handling/error_handling_test.sh +31 -0
- data/tracks/bash/exercises/error-handling/example.sh +9 -0
- data/tracks/ceylon/config/maintainers.json +25 -0
- data/tracks/chapel/README.md +1 -1
- data/tracks/chapel/config/exercise_readme.go.tmpl +16 -0
- data/tracks/chapel/config/maintainers.json +5 -0
- data/tracks/chapel/config.json +0 -5
- data/tracks/coffeescript/config/exercise_readme.go.tmpl +16 -0
- data/tracks/coffeescript/config.json +84 -26
- data/tracks/coffeescript/exercises/accumulate/README.md +43 -0
- data/tracks/coffeescript/exercises/anagram/README.md +21 -0
- data/tracks/coffeescript/exercises/atbash-cipher/README.md +42 -0
- data/tracks/coffeescript/exercises/beer-song/README.md +335 -0
- data/tracks/coffeescript/exercises/binary/README.md +43 -0
- data/tracks/coffeescript/exercises/binary-search-tree/README.md +68 -0
- data/tracks/coffeescript/exercises/bob/README.md +26 -0
- data/tracks/coffeescript/exercises/clock/README.md +21 -0
- data/tracks/coffeescript/exercises/hello-world/README.md +29 -0
- data/tracks/coffeescript/exercises/hexadecimal/README.md +22 -0
- data/tracks/coffeescript/exercises/linked-list/README.md +42 -0
- data/tracks/coffeescript/exercises/luhn/README.md +79 -0
- data/tracks/coffeescript/exercises/nth-prime/README.md +23 -0
- data/tracks/coffeescript/exercises/nucleotide-count/README.md +41 -0
- data/tracks/coffeescript/exercises/palindrome-products/README.md +48 -0
- data/tracks/coffeescript/exercises/pascals-triangle/README.md +29 -0
- data/tracks/coffeescript/exercises/queen-attack/README.md +41 -0
- data/tracks/coffeescript/exercises/triangle/README.md +34 -0
- data/tracks/coffeescript/exercises/trinary/README.md +36 -0
- data/tracks/coffeescript/exercises/word-count/README.md +27 -0
- data/tracks/coffeescript/exercises/wordy/README.md +71 -0
- data/tracks/coldfusion/config/exercise_readme.go.tmpl +16 -0
- data/tracks/coldfusion/config.json +4 -6
- data/tracks/coldfusion/exercises/leap/README.md +33 -0
- data/tracks/coq/README.md +19 -32
- data/tracks/coq/config/exercise_readme.go.tmpl +16 -0
- data/tracks/coq/config.json +9 -5
- data/tracks/coq/exercises/hello-world/README.md +45 -0
- data/tracks/coq/exercises/rna-transcription/README.md +49 -0
- data/tracks/coq/exercises/tautology/README.md +33 -0
- data/tracks/cpp/config/exercise_readme.go.tmpl +16 -0
- data/tracks/cpp/config.json +144 -41
- data/tracks/cpp/exercises/allergies/README.md +69 -0
- data/tracks/cpp/exercises/anagram/README.md +45 -0
- data/tracks/cpp/exercises/atbash-cipher/README.md +66 -0
- data/tracks/cpp/exercises/beer-song/README.md +359 -0
- data/tracks/cpp/exercises/binary/README.md +67 -0
- data/tracks/cpp/exercises/bob/README.md +50 -0
- data/tracks/cpp/exercises/clock/README.md +45 -0
- data/tracks/cpp/exercises/crypto-square/README.md +106 -0
- data/tracks/cpp/exercises/difference-of-squares/README.md +51 -0
- data/tracks/cpp/exercises/etl/README.md +83 -0
- data/tracks/cpp/exercises/food-chain/README.md +102 -0
- data/tracks/cpp/exercises/gigasecond/README.md +43 -0
- data/tracks/cpp/exercises/grade-school/README.md +74 -0
- data/tracks/cpp/exercises/grains/README.md +66 -0
- data/tracks/cpp/exercises/hamming/README.md +74 -0
- data/tracks/cpp/exercises/hello-world/README.md +53 -0
- data/tracks/cpp/exercises/hexadecimal/README.md +46 -0
- data/tracks/cpp/exercises/leap/README.md +65 -0
- data/tracks/cpp/exercises/meetup/README.md +62 -0
- data/tracks/cpp/exercises/nth-prime/README.md +47 -0
- data/tracks/cpp/exercises/nucleotide-count/README.md +65 -0
- data/tracks/cpp/exercises/phone-number/README.md +66 -0
- data/tracks/cpp/exercises/prime-factors/README.md +68 -0
- data/tracks/cpp/exercises/queen-attack/README.md +65 -0
- data/tracks/cpp/exercises/raindrops/README.md +56 -0
- data/tracks/cpp/exercises/rna-transcription/README.md +57 -0
- data/tracks/cpp/exercises/robot-name/README.md +54 -0
- data/tracks/cpp/exercises/roman-numerals/README.md +81 -0
- data/tracks/cpp/exercises/say/README.md +101 -0
- data/tracks/cpp/exercises/scrabble-score/README.md +76 -0
- data/tracks/cpp/exercises/series/README.md +59 -0
- data/tracks/cpp/exercises/sieve/README.md +66 -0
- data/tracks/cpp/exercises/space-age/README.md +56 -0
- data/tracks/cpp/exercises/sum-of-multiples/README.md +50 -0
- data/tracks/cpp/exercises/triangle/README.md +58 -0
- data/tracks/cpp/exercises/trinary/README.md +60 -0
- data/tracks/cpp/exercises/word-count/README.md +51 -0
- data/tracks/crystal/config.json +69 -3
- data/tracks/d/config/exercise_readme.go.tmpl +16 -0
- data/tracks/d/config.json +54 -3
- data/tracks/d/exercises/bob/README.md +49 -0
- data/tracks/d/exercises/circular-buffer/README.md +81 -0
- data/tracks/d/exercises/crypto-square/README.md +105 -0
- data/tracks/d/exercises/difference-of-squares/README.md +50 -0
- data/tracks/d/exercises/etl/README.md +82 -0
- data/tracks/d/exercises/gigasecond/README.md +42 -0
- data/tracks/d/exercises/hamming/README.md +73 -0
- data/tracks/d/exercises/hello-world/README.md +52 -0
- data/tracks/d/exercises/leap/README.md +64 -0
- data/tracks/d/exercises/nucleotide-count/README.md +64 -0
- data/tracks/d/exercises/pangram/README.md +46 -0
- data/tracks/d/exercises/raindrops/README.md +55 -0
- data/tracks/d/exercises/react/README.md +50 -0
- data/tracks/d/exercises/rna-transcription/README.md +56 -0
- data/tracks/d/exercises/robot-name/README.md +53 -0
- data/tracks/d/exercises/roman-numerals/README.md +80 -0
- data/tracks/d/exercises/series/README.md +58 -0
- data/tracks/d/exercises/triangle/README.md +57 -0
- data/tracks/delphi/config/maintainers.json +25 -0
- data/tracks/ecmascript/config/maintainers.json +35 -0
- data/tracks/elisp/config/exercise_readme.go.tmpl +16 -0
- data/tracks/elisp/config.json +79 -22
- data/tracks/elisp/exercises/allergies/README.md +37 -0
- data/tracks/elisp/exercises/anagram/README.md +13 -0
- data/tracks/elisp/exercises/atbash-cipher/README.md +34 -0
- data/tracks/elisp/exercises/binary/README.md +35 -0
- data/tracks/elisp/exercises/bob/README.md +18 -0
- data/tracks/elisp/exercises/difference-of-squares/README.md +19 -0
- data/tracks/elisp/exercises/etl/README.md +51 -0
- data/tracks/elisp/exercises/gigasecond/README.md +11 -0
- data/tracks/elisp/exercises/grains/README.md +34 -0
- data/tracks/elisp/exercises/hamming/README.md +42 -0
- data/tracks/elisp/exercises/hello-world/README.md +21 -0
- data/tracks/elisp/exercises/leap/README.md +33 -0
- data/tracks/elisp/exercises/nucleotide-count/README.md +33 -0
- data/tracks/elisp/exercises/perfect-numbers/README.md +24 -0
- data/tracks/elisp/exercises/phone-number/README.md +34 -0
- data/tracks/elisp/exercises/raindrops/README.md +24 -0
- data/tracks/elisp/exercises/rna-transcription/README.md +25 -0
- data/tracks/elisp/exercises/robot-name/README.md +22 -0
- data/tracks/elisp/exercises/roman-numerals/README.md +49 -0
- data/tracks/elisp/exercises/word-count/README.md +19 -0
- data/tracks/elixir/config/maintainers.json +35 -0
- data/tracks/elm/config/exercise_readme.go.tmpl +16 -0
- data/tracks/elm/config.json +96 -5
- data/tracks/elm/exercises/accumulate/README.md +65 -0
- data/tracks/elm/exercises/allergies/README.md +67 -0
- data/tracks/elm/exercises/anagram/README.md +43 -0
- data/tracks/elm/exercises/atbash-cipher/README.md +64 -0
- data/tracks/elm/exercises/bob/README.md +48 -0
- data/tracks/elm/exercises/difference-of-squares/README.md +49 -0
- data/tracks/elm/exercises/etl/README.md +81 -0
- data/tracks/elm/exercises/gigasecond/README.md +41 -0
- data/tracks/elm/exercises/grade-school/README.md +72 -0
- data/tracks/elm/exercises/grains/README.md +64 -0
- data/tracks/elm/exercises/hamming/README.md +72 -0
- data/tracks/elm/exercises/hello-world/README.md +51 -0
- data/tracks/elm/exercises/largest-series-product/README.md +50 -0
- data/tracks/elm/exercises/leap/README.md +63 -0
- data/tracks/elm/exercises/list-ops/README.md +40 -0
- data/tracks/elm/exercises/nucleotide-count/README.md +63 -0
- data/tracks/elm/exercises/pangram/README.md +45 -0
- data/tracks/elm/exercises/phone-number/README.md +64 -0
- data/tracks/elm/exercises/raindrops/README.md +54 -0
- data/tracks/elm/exercises/rna-transcription/README.md +55 -0
- data/tracks/elm/exercises/robot-simulator/README.md +64 -0
- data/tracks/elm/exercises/roman-numerals/README.md +79 -0
- data/tracks/elm/exercises/run-length-encoding/README.md +60 -0
- data/tracks/elm/exercises/say/README.md +99 -0
- data/tracks/elm/exercises/scrabble-score/README.md +74 -0
- data/tracks/elm/exercises/series/README.md +57 -0
- data/tracks/elm/exercises/space-age/README.md +54 -0
- data/tracks/elm/exercises/strain/README.md +70 -0
- data/tracks/elm/exercises/sublist/README.md +51 -0
- data/tracks/elm/exercises/sum-of-multiples/README.md +48 -0
- data/tracks/elm/exercises/triangle/README.md +56 -0
- data/tracks/elm/exercises/word-count/README.md +49 -0
- data/tracks/fortran/config/exercise_readme.go.tmpl +16 -0
- data/tracks/fortran/config.json +21 -5
- data/tracks/fortran/exercises/bob/README.md +18 -0
- data/tracks/fortran/exercises/difference-of-squares/README.md +19 -0
- data/tracks/fortran/exercises/hamming/README.md +42 -0
- data/tracks/fortran/exercises/hello-world/README.md +21 -0
- data/tracks/fortran/exercises/pangram/README.md +15 -0
- data/tracks/fortran/exercises/raindrops/README.md +24 -0
- data/tracks/fortran/exercises/rna-transcription/README.md +25 -0
- data/tracks/go/config/maintainers.json +85 -0
- data/tracks/go/config.json +2 -2
- data/tracks/groovy/config/exercise_readme.go.tmpl +16 -0
- data/tracks/groovy/exercises/difference-of-squares/README.md +33 -0
- data/tracks/groovy/exercises/gigasecond/README.md +25 -0
- data/tracks/groovy/exercises/grains/README.md +48 -0
- data/tracks/groovy/exercises/hamming/README.md +56 -0
- data/tracks/groovy/exercises/hello-world/README.md +35 -0
- data/tracks/groovy/exercises/leap/README.md +47 -0
- data/tracks/groovy/exercises/nth-prime/README.md +29 -0
- data/tracks/groovy/exercises/phone-number/README.md +48 -0
- data/tracks/groovy/exercises/raindrops/README.md +38 -0
- data/tracks/groovy/exercises/rna-transcription/README.md +39 -0
- data/tracks/groovy/exercises/robot-name/README.md +36 -0
- data/tracks/groovy/exercises/roman-numerals/README.md +63 -0
- data/tracks/groovy/exercises/word-count/README.md +33 -0
- data/tracks/haxe/config/exercise_readme.go.tmpl +16 -0
- data/tracks/haxe/config.json +0 -2
- data/tracks/haxe/exercises/bob/README.md +18 -0
- data/tracks/haxe/exercises/hello-world/README.md +21 -0
- data/tracks/idris/config/exercise_readme.go.tmpl +16 -0
- data/tracks/idris/config.json +9 -3
- data/tracks/idris/exercises/hamming/README.md +42 -0
- data/tracks/idris/exercises/hello-world/README.md +21 -0
- data/tracks/idris/exercises/leap/README.md +33 -0
- data/tracks/java/config/maintainers.json +45 -0
- data/tracks/java/exercises/hello-world/TUTORIAL.md +1 -1
- data/tracks/javascript/config/maintainers.json +85 -0
- data/tracks/julia/config/exercise_readme.go.tmpl +16 -0
- data/tracks/julia/config.json +81 -5
- data/tracks/julia/exercises/anagram/README.md +13 -0
- data/tracks/julia/exercises/atbash-cipher/README.md +34 -0
- data/tracks/julia/exercises/bob/README.md +18 -0
- data/tracks/julia/exercises/complex-numbers/README.md +24 -0
- data/tracks/julia/exercises/custom-set/README.md +16 -0
- data/tracks/julia/exercises/difference-of-squares/README.md +19 -0
- data/tracks/julia/exercises/etl/README.md +51 -0
- data/tracks/julia/exercises/gigasecond/README.md +11 -0
- data/tracks/julia/exercises/hamming/README.md +42 -0
- data/tracks/julia/exercises/hello-world/README.md +21 -0
- data/tracks/julia/exercises/isogram/README.md +19 -0
- data/tracks/julia/exercises/leap/README.md +33 -0
- data/tracks/julia/exercises/luhn/README.md +71 -0
- data/tracks/julia/exercises/nucleotide-count/README.md +33 -0
- data/tracks/julia/exercises/pangram/README.md +15 -0
- data/tracks/julia/exercises/pascals-triangle/README.md +21 -0
- data/tracks/julia/exercises/raindrops/README.md +24 -0
- data/tracks/julia/exercises/rna-transcription/README.md +25 -0
- data/tracks/julia/exercises/robot-name/README.md +41 -0
- data/tracks/julia/exercises/roman-numerals/README.md +49 -0
- data/tracks/julia/exercises/rotational-cipher/README.md +59 -0
- data/tracks/julia/exercises/scrabble-score/README.md +44 -0
- data/tracks/julia/exercises/secret-handshake/README.md +35 -0
- data/tracks/julia/exercises/sieve/README.md +34 -0
- data/tracks/julia/exercises/transpose/README.md +65 -0
- data/tracks/julia/exercises/trinary/README.md +28 -0
- data/tracks/julia/exercises/word-count/README.md +19 -0
- data/tracks/lfe/config/exercise_readme.go.tmpl +16 -0
- data/tracks/lfe/config.json +125 -33
- data/tracks/lfe/exercises/accumulate/README.md +51 -0
- data/tracks/lfe/exercises/allergies/README.md +53 -0
- data/tracks/lfe/exercises/anagram/README.md +29 -0
- data/tracks/lfe/exercises/atbash-cipher/README.md +50 -0
- data/tracks/lfe/exercises/bank-account/README.md +46 -0
- data/tracks/lfe/exercises/beer-song/README.md +343 -0
- data/tracks/lfe/exercises/binary/README.md +51 -0
- data/tracks/lfe/exercises/bob/README.md +34 -0
- data/tracks/lfe/exercises/circular-buffer/README.md +66 -0
- data/tracks/lfe/exercises/clock/README.md +29 -0
- data/tracks/lfe/exercises/difference-of-squares/README.md +35 -0
- data/tracks/lfe/exercises/etl/README.md +67 -0
- data/tracks/lfe/exercises/gigasecond/README.md +27 -0
- data/tracks/lfe/exercises/grade-school/README.md +58 -0
- data/tracks/lfe/exercises/grains/README.md +50 -0
- data/tracks/lfe/exercises/hamming/README.md +58 -0
- data/tracks/lfe/exercises/largest-series-product/README.md +36 -0
- data/tracks/lfe/exercises/leap/README.md +49 -0
- data/tracks/lfe/exercises/luhn/README.md +87 -0
- data/tracks/lfe/exercises/meetup/README.md +46 -0
- data/tracks/lfe/exercises/nucleotide-count/README.md +49 -0
- data/tracks/lfe/exercises/parallel-letter-frequency/README.md +27 -0
- data/tracks/lfe/exercises/phone-number/README.md +50 -0
- data/tracks/lfe/exercises/rna-transcription/README.md +41 -0
- data/tracks/lfe/exercises/robot-simulator/README.md +50 -0
- data/tracks/lfe/exercises/series/README.md +43 -0
- data/tracks/lfe/exercises/space-age/README.md +40 -0
- data/tracks/lfe/exercises/strain/README.md +56 -0
- data/tracks/lfe/exercises/sum-of-multiples/README.md +34 -0
- data/tracks/lfe/exercises/trinary/README.md +44 -0
- data/tracks/lfe/exercises/word-count/README.md +35 -0
- data/tracks/lua/config/maintainers.json +35 -0
- data/tracks/lua/config.json +225 -3
- data/tracks/nasm/config/exercise_readme.go.tmpl +16 -0
- data/tracks/nasm/config.json +0 -5
- data/tracks/nim/config/exercise_readme.go.tmpl +16 -0
- data/tracks/nim/config.json +56 -19
- data/tracks/nim/exercises/anagram/README.md +13 -0
- data/tracks/nim/exercises/binary/README.md +35 -0
- data/tracks/nim/exercises/bob/README.md +18 -0
- data/tracks/nim/exercises/difference-of-squares/README.md +19 -0
- data/tracks/nim/exercises/hamming/README.md +42 -0
- data/tracks/nim/exercises/hello-world/README.md +21 -0
- data/tracks/nim/exercises/leap/README.md +33 -0
- data/tracks/nim/exercises/nucleotide-count/README.md +33 -0
- data/tracks/nim/exercises/queen-attack/README.md +33 -0
- data/tracks/nim/exercises/raindrops/README.md +24 -0
- data/tracks/nim/exercises/react/README.md +19 -0
- data/tracks/nim/exercises/rna-transcription/README.md +25 -0
- data/tracks/nim/exercises/triangle/README.md +26 -0
- data/tracks/nim/exercises/word-count/README.md +19 -0
- data/tracks/objective-c/config/exercise_readme.go.tmpl +16 -0
- data/tracks/objective-c/config/maintainers.json +35 -0
- data/tracks/objective-c/config.json +168 -47
- data/tracks/objective-c/exercises/acronym/README.md +32 -0
- data/tracks/objective-c/exercises/all-your-base/README.md +52 -0
- data/tracks/objective-c/exercises/allergies/README.md +54 -0
- data/tracks/objective-c/exercises/anagram/README.md +30 -0
- data/tracks/objective-c/exercises/atbash-cipher/README.md +51 -0
- data/tracks/objective-c/exercises/beer-song/README.md +344 -0
- data/tracks/objective-c/exercises/binary-search/README.md +58 -0
- data/tracks/objective-c/exercises/bob/README.md +35 -0
- data/tracks/objective-c/exercises/bracket-push/README.md +27 -0
- data/tracks/objective-c/exercises/clock/README.md +30 -0
- data/tracks/objective-c/exercises/crypto-square/README.md +91 -0
- data/tracks/objective-c/exercises/difference-of-squares/README.md +36 -0
- data/tracks/objective-c/exercises/etl/README.md +68 -0
- data/tracks/objective-c/exercises/flatten-array/README.md +35 -0
- data/tracks/objective-c/exercises/gigasecond/README.md +28 -0
- data/tracks/objective-c/exercises/grade-school/README.md +59 -0
- data/tracks/objective-c/exercises/hamming/README.md +59 -0
- data/tracks/objective-c/exercises/hello-world/README.md +38 -0
- data/tracks/objective-c/exercises/isogram/README.md +36 -0
- data/tracks/objective-c/exercises/largest-series-product/README.md +37 -0
- data/tracks/objective-c/exercises/leap/README.md +50 -0
- data/tracks/objective-c/exercises/luhn/README.md +88 -0
- data/tracks/objective-c/exercises/meetup/README.md +47 -0
- data/tracks/objective-c/exercises/nucleotide-count/README.md +50 -0
- data/tracks/objective-c/exercises/pangram/README.md +32 -0
- data/tracks/objective-c/exercises/pascals-triangle/README.md +38 -0
- data/tracks/objective-c/exercises/perfect-numbers/README.md +41 -0
- data/tracks/objective-c/exercises/phone-number/README.md +51 -0
- data/tracks/objective-c/exercises/raindrops/README.md +41 -0
- data/tracks/objective-c/exercises/rna-transcription/README.md +42 -0
- data/tracks/objective-c/exercises/robot-name/README.md +39 -0
- data/tracks/objective-c/exercises/roman-numerals/README.md +66 -0
- data/tracks/objective-c/exercises/run-length-encoding/README.md +47 -0
- data/tracks/objective-c/exercises/scrabble-score/README.md +61 -0
- data/tracks/objective-c/exercises/secret-handshake/README.md +52 -0
- data/tracks/objective-c/exercises/sieve/README.md +51 -0
- data/tracks/objective-c/exercises/space-age/README.md +41 -0
- data/tracks/objective-c/exercises/sublist/README.md +38 -0
- data/tracks/objective-c/exercises/sum-of-multiples/README.md +35 -0
- data/tracks/objective-c/exercises/transpose/README.md +82 -0
- data/tracks/objective-c/exercises/triangle/README.md +43 -0
- data/tracks/objective-c/exercises/word-count/README.md +36 -0
- data/tracks/plsql/config/exercise_readme.go.tmpl +16 -0
- data/tracks/plsql/config.json +0 -2
- data/tracks/plsql/exercises/binary/README.md +55 -0
- data/tracks/plsql/exercises/difference-of-squares/README.md +39 -0
- data/tracks/plsql/exercises/gigasecond/README.md +31 -0
- data/tracks/plsql/exercises/grains/README.md +54 -0
- data/tracks/plsql/exercises/hamming/README.md +62 -0
- data/tracks/plsql/exercises/leap/README.md +53 -0
- data/tracks/plsql/exercises/nth-prime/README.md +35 -0
- data/tracks/plsql/exercises/raindrops/README.md +44 -0
- data/tracks/plsql/exercises/rna-transcription/README.md +45 -0
- data/tracks/plsql/exercises/roman-numerals/README.md +69 -0
- data/tracks/powershell/config.json +8 -5
- data/tracks/prolog/config/exercise_readme.go.tmpl +16 -0
- data/tracks/prolog/config.json +33 -5
- data/tracks/prolog/exercises/anagram/README.md +13 -0
- data/tracks/prolog/exercises/binary/README.md +35 -0
- data/tracks/prolog/exercises/grains/README.md +34 -0
- data/tracks/prolog/exercises/hamming/README.md +42 -0
- data/tracks/prolog/exercises/hello-world/README.md +21 -0
- data/tracks/prolog/exercises/leap/README.md +33 -0
- data/tracks/prolog/exercises/nucleotide-count/README.md +33 -0
- data/tracks/prolog/exercises/rna-transcription/README.md +25 -0
- data/tracks/prolog/exercises/space-age/README.md +24 -0
- data/tracks/prolog/exercises/sum-of-multiples/README.md +18 -0
- data/tracks/prolog/exercises/triangle/README.md +26 -0
- data/tracks/python/requirements-travis.txt +1 -1
- data/tracks/r/config/maintainers.json +35 -0
- data/tracks/r/config.json +1 -1
- data/tracks/racket/README.md +1 -1
- data/tracks/racket/config/exercise_readme.go.tmpl +16 -0
- data/tracks/racket/config.json +93 -25
- data/tracks/racket/exercises/accumulate/README.md +60 -0
- data/tracks/racket/exercises/acronym/README.md +40 -0
- data/tracks/racket/exercises/allergies/README.md +62 -0
- data/tracks/racket/exercises/anagram/README.md +38 -0
- data/tracks/racket/exercises/bob/README.md +43 -0
- data/tracks/racket/exercises/difference-of-squares/README.md +44 -0
- data/tracks/racket/exercises/etl/README.md +76 -0
- data/tracks/racket/exercises/gigasecond/README.md +36 -0
- data/tracks/racket/exercises/grains/README.md +59 -0
- data/tracks/racket/exercises/grep/README.md +96 -0
- data/tracks/racket/exercises/hamming/README.md +67 -0
- data/tracks/racket/exercises/hello-world/README.md +46 -0
- data/tracks/racket/exercises/leap/README.md +58 -0
- data/tracks/racket/exercises/list-ops/README.md +35 -0
- data/tracks/racket/exercises/nucleotide-count/README.md +58 -0
- data/tracks/racket/exercises/perfect-numbers/README.md +49 -0
- data/tracks/racket/exercises/phone-number/README.md +59 -0
- data/tracks/racket/exercises/raindrops/README.md +49 -0
- data/tracks/racket/exercises/rna-transcription/README.md +50 -0
- data/tracks/racket/exercises/roman-numerals/README.md +74 -0
- data/tracks/racket/exercises/say/README.md +94 -0
- data/tracks/racket/exercises/scrabble-score/README.md +69 -0
- data/tracks/racket/exercises/word-count/README.md +44 -0
- data/tracks/ruby/exercises/binary-search-tree/.meta/solutions/binary_search_tree.rb +4 -2
- data/tracks/ruby/exercises/binary-search-tree/binary_search_tree_test.rb +13 -4
- data/tracks/scala/config/maintainers.json +29 -0
- data/tracks/scala/exercises/atbash-cipher/example.scala +4 -1
- data/tracks/scala/exercises/atbash-cipher/src/test/scala/AtbashCipherTest.scala +64 -0
- data/tracks/scala/exercises/roman-numerals/example.scala +2 -2
- data/tracks/scala/exercises/roman-numerals/src/test/scala/RomanNumeralsTest.scala +40 -39
- data/tracks/scala/testgen/src/main/scala/AtbashCipherTestGenerator.scala +16 -0
- data/tracks/scala/testgen/src/main/scala/RomanNumeralsTestGenerator.scala +15 -0
- data/tracks/scheme/config/exercise_readme.go.tmpl +16 -0
- data/tracks/scheme/config.json +42 -3
- data/tracks/scheme/exercises/anagram/README.md +13 -0
- data/tracks/scheme/exercises/bob/README.md +18 -0
- data/tracks/scheme/exercises/difference-of-squares/README.md +19 -0
- data/tracks/scheme/exercises/grains/README.md +34 -0
- data/tracks/scheme/exercises/hamming/README.md +42 -0
- data/tracks/scheme/exercises/hello-world/README.md +21 -0
- data/tracks/scheme/exercises/leap/README.md +33 -0
- data/tracks/scheme/exercises/list-ops/README.md +10 -0
- data/tracks/scheme/exercises/nucleotide-count/README.md +33 -0
- data/tracks/scheme/exercises/phone-number/README.md +34 -0
- data/tracks/scheme/exercises/raindrops/README.md +24 -0
- data/tracks/scheme/exercises/rna-transcription/README.md +25 -0
- data/tracks/scheme/exercises/robot-name/README.md +22 -0
- data/tracks/scheme/exercises/scrabble-score/README.md +44 -0
- data/tracks/sml/config/maintainers.json +25 -0
- data/tracks/typescript/config/exercise_readme.go.tmpl +16 -0
- data/tracks/typescript/config/maintainers.json +25 -0
- data/tracks/typescript/config.json +0 -2
- data/tracks/typescript/exercises/anagram/README.md +39 -0
- data/tracks/typescript/exercises/beer-song/README.md +353 -0
- data/tracks/typescript/exercises/bob/README.md +44 -0
- data/tracks/typescript/exercises/difference-of-squares/README.md +45 -0
- data/tracks/typescript/exercises/etl/README.md +77 -0
- data/tracks/typescript/exercises/food-chain/README.md +96 -0
- data/tracks/typescript/exercises/gigasecond/README.md +37 -0
- data/tracks/typescript/exercises/grade-school/README.md +68 -0
- data/tracks/typescript/exercises/hamming/README.md +68 -0
- data/tracks/typescript/exercises/hello-world/README.md +47 -0
- data/tracks/typescript/exercises/leap/README.md +59 -0
- data/tracks/typescript/exercises/pangram/README.md +41 -0
- data/tracks/typescript/exercises/phone-number/README.md +60 -0
- data/tracks/typescript/exercises/raindrops/README.md +50 -0
- data/tracks/typescript/exercises/rna-transcription/README.md +51 -0
- data/tracks/typescript/exercises/robot-name/README.md +48 -0
- data/tracks/typescript/exercises/say/README.md +95 -0
- data/tracks/typescript/exercises/scrabble-score/README.md +70 -0
- data/tracks/typescript/exercises/space-age/README.md +50 -0
- data/tracks/typescript/exercises/word-count/README.md +45 -0
- data/tracks/typescript/exercises/wordy/README.md +89 -0
- data/tracks/vbnet/config/exercise_readme.go.tmpl +16 -0
- data/tracks/vbnet/config.json +28 -12
- data/tracks/vbnet/exercises/accumulate/README.md +41 -0
- data/tracks/vbnet/exercises/allergies/README.md +43 -0
- data/tracks/vbnet/exercises/anagram/README.md +19 -0
- data/tracks/vbnet/exercises/atbash-cipher/README.md +40 -0
- data/tracks/vbnet/exercises/binary/README.md +41 -0
- data/tracks/vbnet/exercises/bob/README.md +24 -0
- data/tracks/vbnet/exercises/crypto-square/README.md +80 -0
- metadata +401 -4
- data/tracks/scala/exercises/atbash-cipher/src/main/scala/Atbash.scala +0 -3
- data/tracks/scala/exercises/atbash-cipher/src/test/scala/atbash_test.scala +0 -48
data/tracks/elm/config.json
CHANGED
|
@@ -1,236 +1,327 @@
|
|
|
1
1
|
{
|
|
2
|
-
"slug": "elm",
|
|
3
2
|
"language": "Elm",
|
|
4
|
-
"repository": "https://github.com/exercism/elm",
|
|
5
3
|
"active": true,
|
|
6
4
|
"exercises": [
|
|
7
5
|
{
|
|
6
|
+
"uuid": "2c3902df-93e1-48d1-829d-4daa93a1f06f",
|
|
8
7
|
"slug": "hello-world",
|
|
8
|
+
"core": false,
|
|
9
|
+
"unlocked_by": null,
|
|
9
10
|
"difficulty": 1,
|
|
10
11
|
"topics": [
|
|
11
12
|
|
|
12
13
|
]
|
|
13
14
|
},
|
|
14
15
|
{
|
|
16
|
+
"uuid": "11ce2a73-3f43-4b14-b755-6c52dc71bdda",
|
|
15
17
|
"slug": "bob",
|
|
18
|
+
"core": false,
|
|
19
|
+
"unlocked_by": null,
|
|
16
20
|
"difficulty": 1,
|
|
17
21
|
"topics": [
|
|
18
22
|
|
|
19
23
|
]
|
|
20
24
|
},
|
|
21
25
|
{
|
|
26
|
+
"uuid": "e943e3bf-920e-4541-95c3-be7bf6024afe",
|
|
22
27
|
"slug": "leap",
|
|
28
|
+
"core": false,
|
|
29
|
+
"unlocked_by": null,
|
|
23
30
|
"difficulty": 1,
|
|
24
31
|
"topics": [
|
|
25
32
|
|
|
26
33
|
]
|
|
27
34
|
},
|
|
28
35
|
{
|
|
36
|
+
"uuid": "e3e73171-c3d1-49f7-9511-d1f4a08e7a69",
|
|
29
37
|
"slug": "raindrops",
|
|
38
|
+
"core": false,
|
|
39
|
+
"unlocked_by": null,
|
|
30
40
|
"difficulty": 1,
|
|
31
41
|
"topics": [
|
|
32
42
|
|
|
33
43
|
]
|
|
34
44
|
},
|
|
35
45
|
{
|
|
46
|
+
"uuid": "a70503ba-f1f3-4583-9226-c3ada98e9500",
|
|
36
47
|
"slug": "pangram",
|
|
48
|
+
"core": false,
|
|
49
|
+
"unlocked_by": null,
|
|
37
50
|
"difficulty": 1,
|
|
38
51
|
"topics": [
|
|
39
52
|
|
|
40
53
|
]
|
|
41
54
|
},
|
|
42
55
|
{
|
|
56
|
+
"uuid": "0b4561f3-59a7-4463-a733-c7fa8f9f332a",
|
|
43
57
|
"slug": "accumulate",
|
|
58
|
+
"core": false,
|
|
59
|
+
"unlocked_by": null,
|
|
44
60
|
"difficulty": 1,
|
|
45
61
|
"topics": [
|
|
46
62
|
|
|
47
63
|
]
|
|
48
64
|
},
|
|
49
65
|
{
|
|
66
|
+
"uuid": "767f6825-8736-4307-85c7-090a9a327fd9",
|
|
50
67
|
"slug": "triangle",
|
|
68
|
+
"core": false,
|
|
69
|
+
"unlocked_by": null,
|
|
51
70
|
"difficulty": 1,
|
|
52
71
|
"topics": [
|
|
53
72
|
|
|
54
73
|
]
|
|
55
74
|
},
|
|
56
75
|
{
|
|
76
|
+
"uuid": "16ccc1fa-34b0-4a7e-b3cf-33a711e857ea",
|
|
57
77
|
"slug": "scrabble-score",
|
|
78
|
+
"core": false,
|
|
79
|
+
"unlocked_by": null,
|
|
58
80
|
"difficulty": 1,
|
|
59
81
|
"topics": [
|
|
60
82
|
|
|
61
83
|
]
|
|
62
84
|
},
|
|
63
85
|
{
|
|
86
|
+
"uuid": "5845a108-d8b2-41dd-b371-cf9eff7a2230",
|
|
64
87
|
"slug": "anagram",
|
|
88
|
+
"core": false,
|
|
89
|
+
"unlocked_by": null,
|
|
65
90
|
"difficulty": 1,
|
|
66
91
|
"topics": [
|
|
67
92
|
|
|
68
93
|
]
|
|
69
94
|
},
|
|
70
95
|
{
|
|
96
|
+
"uuid": "2ce5bcba-c708-4da0-ae11-4654b3e0d0a5",
|
|
71
97
|
"slug": "space-age",
|
|
98
|
+
"core": false,
|
|
99
|
+
"unlocked_by": null,
|
|
72
100
|
"difficulty": 1,
|
|
73
101
|
"topics": [
|
|
74
102
|
|
|
75
103
|
]
|
|
76
104
|
},
|
|
77
105
|
{
|
|
106
|
+
"uuid": "992c5ed1-9127-42a4-b508-61c9487612c5",
|
|
78
107
|
"slug": "strain",
|
|
108
|
+
"core": false,
|
|
109
|
+
"unlocked_by": null,
|
|
79
110
|
"difficulty": 1,
|
|
80
111
|
"topics": [
|
|
81
112
|
|
|
82
113
|
]
|
|
83
114
|
},
|
|
84
115
|
{
|
|
116
|
+
"uuid": "646c7164-cfa4-42c3-9af5-2f672e6ec81e",
|
|
85
117
|
"slug": "difference-of-squares",
|
|
118
|
+
"core": false,
|
|
119
|
+
"unlocked_by": null,
|
|
86
120
|
"difficulty": 1,
|
|
87
121
|
"topics": [
|
|
88
122
|
|
|
89
123
|
]
|
|
90
124
|
},
|
|
91
125
|
{
|
|
126
|
+
"uuid": "9c9507a6-8187-4ce6-b0bc-b4765effb74c",
|
|
92
127
|
"slug": "word-count",
|
|
128
|
+
"core": false,
|
|
129
|
+
"unlocked_by": null,
|
|
93
130
|
"difficulty": 1,
|
|
94
131
|
"topics": [
|
|
95
132
|
|
|
96
133
|
]
|
|
97
134
|
},
|
|
98
135
|
{
|
|
136
|
+
"uuid": "75859d00-8772-4471-97a7-d6fe432edc5e",
|
|
99
137
|
"slug": "sum-of-multiples",
|
|
138
|
+
"core": false,
|
|
139
|
+
"unlocked_by": null,
|
|
100
140
|
"difficulty": 1,
|
|
101
141
|
"topics": [
|
|
102
142
|
|
|
103
143
|
]
|
|
104
144
|
},
|
|
105
145
|
{
|
|
146
|
+
"uuid": "472c2e13-6608-4862-b884-a7e458e0bcdd",
|
|
106
147
|
"slug": "hamming",
|
|
148
|
+
"core": false,
|
|
149
|
+
"unlocked_by": null,
|
|
107
150
|
"difficulty": 1,
|
|
108
151
|
"topics": [
|
|
109
152
|
|
|
110
153
|
]
|
|
111
154
|
},
|
|
112
155
|
{
|
|
156
|
+
"uuid": "3af96d19-87d7-4d8b-aecb-f63122815501",
|
|
113
157
|
"slug": "rna-transcription",
|
|
158
|
+
"core": false,
|
|
159
|
+
"unlocked_by": null,
|
|
114
160
|
"difficulty": 1,
|
|
115
161
|
"topics": [
|
|
116
162
|
|
|
117
163
|
]
|
|
118
164
|
},
|
|
119
165
|
{
|
|
166
|
+
"uuid": "0b2ac079-f7ed-4e90-a566-00c9fe0d5c88",
|
|
120
167
|
"slug": "run-length-encoding",
|
|
168
|
+
"core": false,
|
|
169
|
+
"unlocked_by": null,
|
|
121
170
|
"difficulty": 1,
|
|
122
171
|
"topics": [
|
|
123
172
|
|
|
124
173
|
]
|
|
125
174
|
},
|
|
126
175
|
{
|
|
176
|
+
"uuid": "8e1cb827-2fa9-46a4-ac50-7f8b3ba66809",
|
|
127
177
|
"slug": "sublist",
|
|
178
|
+
"core": false,
|
|
179
|
+
"unlocked_by": null,
|
|
128
180
|
"difficulty": 1,
|
|
129
181
|
"topics": [
|
|
130
182
|
|
|
131
183
|
]
|
|
132
184
|
},
|
|
133
185
|
{
|
|
186
|
+
"uuid": "c9e00708-3d18-4a0b-a3de-cae4d979a981",
|
|
134
187
|
"slug": "nucleotide-count",
|
|
188
|
+
"core": false,
|
|
189
|
+
"unlocked_by": null,
|
|
135
190
|
"difficulty": 1,
|
|
136
191
|
"topics": [
|
|
137
192
|
|
|
138
193
|
]
|
|
139
194
|
},
|
|
140
195
|
{
|
|
196
|
+
"uuid": "1e17ed2b-57b4-4cad-a684-ce7070d5023b",
|
|
141
197
|
"slug": "series",
|
|
198
|
+
"core": false,
|
|
199
|
+
"unlocked_by": null,
|
|
142
200
|
"difficulty": 1,
|
|
143
201
|
"topics": [
|
|
144
202
|
|
|
145
203
|
]
|
|
146
204
|
},
|
|
147
205
|
{
|
|
206
|
+
"uuid": "1071ec57-5527-4eb1-b297-77355ed64547",
|
|
148
207
|
"slug": "phone-number",
|
|
208
|
+
"core": false,
|
|
209
|
+
"unlocked_by": null,
|
|
149
210
|
"difficulty": 1,
|
|
150
211
|
"topics": [
|
|
151
212
|
|
|
152
213
|
]
|
|
153
214
|
},
|
|
154
215
|
{
|
|
216
|
+
"uuid": "c7749c5a-529e-4e46-8bdb-e33519f6d176",
|
|
155
217
|
"slug": "grade-school",
|
|
218
|
+
"core": false,
|
|
219
|
+
"unlocked_by": null,
|
|
156
220
|
"difficulty": 1,
|
|
157
221
|
"topics": [
|
|
158
222
|
|
|
159
223
|
]
|
|
160
224
|
},
|
|
161
225
|
{
|
|
226
|
+
"uuid": "29b5a28a-417a-4cee-ba6f-9dd942ceffaa",
|
|
162
227
|
"slug": "allergies",
|
|
228
|
+
"core": false,
|
|
229
|
+
"unlocked_by": null,
|
|
163
230
|
"difficulty": 1,
|
|
164
231
|
"topics": [
|
|
165
232
|
|
|
166
233
|
]
|
|
167
234
|
},
|
|
168
235
|
{
|
|
236
|
+
"uuid": "6b8f952e-94ea-4264-accf-cdb28b3b4529",
|
|
169
237
|
"slug": "robot-simulator",
|
|
238
|
+
"core": false,
|
|
239
|
+
"unlocked_by": null,
|
|
170
240
|
"difficulty": 1,
|
|
171
241
|
"topics": [
|
|
172
242
|
|
|
173
243
|
]
|
|
174
244
|
},
|
|
175
245
|
{
|
|
246
|
+
"uuid": "114b5717-0d82-459e-90c4-f00d8b6beb5b",
|
|
176
247
|
"slug": "list-ops",
|
|
248
|
+
"core": false,
|
|
249
|
+
"unlocked_by": null,
|
|
177
250
|
"difficulty": 1,
|
|
178
251
|
"topics": [
|
|
179
252
|
|
|
180
253
|
]
|
|
181
254
|
},
|
|
182
255
|
{
|
|
256
|
+
"uuid": "8322872b-e020-4a9e-9206-015c0fdacb62",
|
|
183
257
|
"slug": "atbash-cipher",
|
|
258
|
+
"core": false,
|
|
259
|
+
"unlocked_by": null,
|
|
184
260
|
"difficulty": 1,
|
|
185
261
|
"topics": [
|
|
186
262
|
|
|
187
263
|
]
|
|
188
264
|
},
|
|
189
265
|
{
|
|
266
|
+
"uuid": "ea41b90d-3ff5-43c0-94e5-6b436feb99e5",
|
|
190
267
|
"slug": "say",
|
|
268
|
+
"core": false,
|
|
269
|
+
"unlocked_by": null,
|
|
191
270
|
"difficulty": 1,
|
|
192
271
|
"topics": [
|
|
193
272
|
|
|
194
273
|
]
|
|
195
274
|
},
|
|
196
275
|
{
|
|
276
|
+
"uuid": "1902d726-5a62-475b-b7d3-7188a50e717f",
|
|
197
277
|
"slug": "largest-series-product",
|
|
278
|
+
"core": false,
|
|
279
|
+
"unlocked_by": null,
|
|
198
280
|
"difficulty": 1,
|
|
199
281
|
"topics": [
|
|
200
282
|
|
|
201
283
|
]
|
|
202
284
|
},
|
|
203
285
|
{
|
|
286
|
+
"uuid": "c1461035-6abe-4f17-a818-7a3ac6642c18",
|
|
204
287
|
"slug": "roman-numerals",
|
|
288
|
+
"core": false,
|
|
289
|
+
"unlocked_by": null,
|
|
205
290
|
"difficulty": 1,
|
|
206
291
|
"topics": [
|
|
207
292
|
|
|
208
293
|
]
|
|
209
294
|
},
|
|
210
295
|
{
|
|
296
|
+
"uuid": "5ddfed31-b787-48f9-b3bf-4a8d157d1c3d",
|
|
211
297
|
"slug": "gigasecond",
|
|
298
|
+
"core": false,
|
|
299
|
+
"unlocked_by": null,
|
|
212
300
|
"difficulty": 1,
|
|
213
301
|
"topics": [
|
|
214
302
|
|
|
215
303
|
]
|
|
216
304
|
},
|
|
217
305
|
{
|
|
306
|
+
"uuid": "41518694-4293-49f6-8af5-1cdad84acf78",
|
|
218
307
|
"slug": "grains",
|
|
308
|
+
"core": false,
|
|
309
|
+
"unlocked_by": null,
|
|
219
310
|
"difficulty": 1,
|
|
220
311
|
"topics": [
|
|
221
312
|
|
|
222
313
|
]
|
|
223
314
|
},
|
|
224
315
|
{
|
|
316
|
+
"uuid": "1f39d315-324c-4e2f-bf48-ce8432836596",
|
|
225
317
|
"slug": "etl",
|
|
318
|
+
"core": false,
|
|
319
|
+
"unlocked_by": null,
|
|
226
320
|
"difficulty": 1,
|
|
227
321
|
"topics": [
|
|
228
322
|
|
|
229
323
|
]
|
|
230
324
|
}
|
|
231
|
-
],
|
|
232
|
-
"deprecated": [
|
|
233
|
-
|
|
234
325
|
],
|
|
235
326
|
"foregone": [
|
|
236
327
|
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# Accumulate
|
|
2
|
+
|
|
3
|
+
Implement the `accumulate` operation, which, given a collection and an
|
|
4
|
+
operation to perform on each element of the collection, returns a new
|
|
5
|
+
collection containing the result of applying that operation to each element of
|
|
6
|
+
the input collection.
|
|
7
|
+
|
|
8
|
+
Given the collection of numbers:
|
|
9
|
+
|
|
10
|
+
- 1, 2, 3, 4, 5
|
|
11
|
+
|
|
12
|
+
And the operation:
|
|
13
|
+
|
|
14
|
+
- square a number (`x => x * x`)
|
|
15
|
+
|
|
16
|
+
Your code should be able to produce the collection of squares:
|
|
17
|
+
|
|
18
|
+
- 1, 4, 9, 16, 25
|
|
19
|
+
|
|
20
|
+
Check out the test suite to see the expected function signature.
|
|
21
|
+
|
|
22
|
+
## Restrictions
|
|
23
|
+
|
|
24
|
+
Keep your hands off that collect/map/fmap/whatchamacallit functionality
|
|
25
|
+
provided by your standard library!
|
|
26
|
+
Solve this one yourself using other basic tools instead.
|
|
27
|
+
|
|
28
|
+
Lisp specific: it's perfectly fine to use `MAPCAR` or the equivalent,
|
|
29
|
+
as this is idiomatic Lisp, not a library function.
|
|
30
|
+
|
|
31
|
+
## Elm Installation
|
|
32
|
+
|
|
33
|
+
Refer to the [Exercism help page](http://exercism.io/languages/elm) for Elm
|
|
34
|
+
installation and learning resources.
|
|
35
|
+
|
|
36
|
+
## Writing the Code
|
|
37
|
+
|
|
38
|
+
The first time you start an exercise, you'll need to ensure you have the
|
|
39
|
+
appropriate dependencies installed.
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
$ npm install
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Execute the tests with:
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
$ npm test
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Automatically run tests again when you save changes:
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
$ npm run watch
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
As you work your way through the test suite, be sure to remove the `skip <|`
|
|
58
|
+
calls from each test until you get them all passing!
|
|
59
|
+
|
|
60
|
+
## Source
|
|
61
|
+
|
|
62
|
+
Conversation with James Edward Gray II [https://twitter.com/jeg2](https://twitter.com/jeg2)
|
|
63
|
+
|
|
64
|
+
## Submitting Incomplete Solutions
|
|
65
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# Allergies
|
|
2
|
+
|
|
3
|
+
Given a person's allergy score, determine whether or not they're allergic to a given item, and their full list of allergies.
|
|
4
|
+
|
|
5
|
+
An allergy test produces a single numeric score which contains the
|
|
6
|
+
information about all the allergies the person has (that they were
|
|
7
|
+
tested for).
|
|
8
|
+
|
|
9
|
+
The list of items (and their value) that were tested are:
|
|
10
|
+
|
|
11
|
+
* eggs (1)
|
|
12
|
+
* peanuts (2)
|
|
13
|
+
* shellfish (4)
|
|
14
|
+
* strawberries (8)
|
|
15
|
+
* tomatoes (16)
|
|
16
|
+
* chocolate (32)
|
|
17
|
+
* pollen (64)
|
|
18
|
+
* cats (128)
|
|
19
|
+
|
|
20
|
+
So if Tom is allergic to peanuts and chocolate, he gets a score of 34.
|
|
21
|
+
|
|
22
|
+
Now, given just that score of 34, your program should be able to say:
|
|
23
|
+
|
|
24
|
+
- Whether Tom is allergic to any one of those allergens listed above.
|
|
25
|
+
- All the allergens Tom is allergic to.
|
|
26
|
+
|
|
27
|
+
Note: a given score may include allergens **not** listed above (i.e.
|
|
28
|
+
allergens that score 256, 512, 1024, etc.). Your program should
|
|
29
|
+
ignore those components of the score. For example, if the allergy
|
|
30
|
+
score is 257, your program should only report the eggs (1) allergy.
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
## Elm Installation
|
|
34
|
+
|
|
35
|
+
Refer to the [Exercism help page](http://exercism.io/languages/elm) for Elm
|
|
36
|
+
installation and learning resources.
|
|
37
|
+
|
|
38
|
+
## Writing the Code
|
|
39
|
+
|
|
40
|
+
The first time you start an exercise, you'll need to ensure you have the
|
|
41
|
+
appropriate dependencies installed.
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
$ npm install
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
Execute the tests with:
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
$ npm test
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
Automatically run tests again when you save changes:
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
$ npm run watch
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
As you work your way through the test suite, be sure to remove the `skip <|`
|
|
60
|
+
calls from each test until you get them all passing!
|
|
61
|
+
|
|
62
|
+
## Source
|
|
63
|
+
|
|
64
|
+
Jumpstart Lab Warm-up [http://jumpstartlab.com](http://jumpstartlab.com)
|
|
65
|
+
|
|
66
|
+
## Submitting Incomplete Solutions
|
|
67
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Anagram
|
|
2
|
+
|
|
3
|
+
Given a word and a list of possible anagrams, select the correct sublist.
|
|
4
|
+
|
|
5
|
+
Given `"listen"` and a list of candidates like `"enlists" "google"
|
|
6
|
+
"inlets" "banana"` the program should return a list containing
|
|
7
|
+
`"inlets"`.
|
|
8
|
+
|
|
9
|
+
## Elm Installation
|
|
10
|
+
|
|
11
|
+
Refer to the [Exercism help page](http://exercism.io/languages/elm) for Elm
|
|
12
|
+
installation and learning resources.
|
|
13
|
+
|
|
14
|
+
## Writing the Code
|
|
15
|
+
|
|
16
|
+
The first time you start an exercise, you'll need to ensure you have the
|
|
17
|
+
appropriate dependencies installed.
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
$ npm install
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Execute the tests with:
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
$ npm test
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Automatically run tests again when you save changes:
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
$ npm run watch
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
As you work your way through the test suite, be sure to remove the `skip <|`
|
|
36
|
+
calls from each test until you get them all passing!
|
|
37
|
+
|
|
38
|
+
## Source
|
|
39
|
+
|
|
40
|
+
Inspired by the Extreme Startup game [https://github.com/rchatley/extreme_startup](https://github.com/rchatley/extreme_startup)
|
|
41
|
+
|
|
42
|
+
## Submitting Incomplete Solutions
|
|
43
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
# Atbash Cipher
|
|
2
|
+
|
|
3
|
+
Create an implementation of the atbash cipher, an ancient encryption system created in the Middle East.
|
|
4
|
+
|
|
5
|
+
The Atbash cipher is a simple substitution cipher that relies on
|
|
6
|
+
transposing all the letters in the alphabet such that the resulting
|
|
7
|
+
alphabet is backwards. The first letter is replaced with the last
|
|
8
|
+
letter, the second with the second-last, and so on.
|
|
9
|
+
|
|
10
|
+
An Atbash cipher for the Latin alphabet would be as follows:
|
|
11
|
+
|
|
12
|
+
```plain
|
|
13
|
+
Plain: abcdefghijklmnopqrstuvwxyz
|
|
14
|
+
Cipher: zyxwvutsrqponmlkjihgfedcba
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
It is a very weak cipher because it only has one possible key, and it is
|
|
18
|
+
a simple monoalphabetic substitution cipher. However, this may not have
|
|
19
|
+
been an issue in the cipher's time.
|
|
20
|
+
|
|
21
|
+
Ciphertext is written out in groups of fixed length, the traditional group size
|
|
22
|
+
being 5 letters, and punctuation is excluded. This is to make it harder to guess
|
|
23
|
+
things based on word boundaries.
|
|
24
|
+
|
|
25
|
+
## Examples
|
|
26
|
+
- Encoding `test` gives `gvhg`
|
|
27
|
+
- Decoding `gvhg` gives `test`
|
|
28
|
+
- Decoding `gsvjf rxpyi ldmul cqfnk hlevi gsvoz abwlt` gives `thequickbrownfoxjumpsoverthelazydog`
|
|
29
|
+
|
|
30
|
+
## Elm Installation
|
|
31
|
+
|
|
32
|
+
Refer to the [Exercism help page](http://exercism.io/languages/elm) for Elm
|
|
33
|
+
installation and learning resources.
|
|
34
|
+
|
|
35
|
+
## Writing the Code
|
|
36
|
+
|
|
37
|
+
The first time you start an exercise, you'll need to ensure you have the
|
|
38
|
+
appropriate dependencies installed.
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
$ npm install
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Execute the tests with:
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
$ npm test
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
Automatically run tests again when you save changes:
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
$ npm run watch
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
As you work your way through the test suite, be sure to remove the `skip <|`
|
|
57
|
+
calls from each test until you get them all passing!
|
|
58
|
+
|
|
59
|
+
## Source
|
|
60
|
+
|
|
61
|
+
Wikipedia [http://en.wikipedia.org/wiki/Atbash](http://en.wikipedia.org/wiki/Atbash)
|
|
62
|
+
|
|
63
|
+
## Submitting Incomplete Solutions
|
|
64
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# Bob
|
|
2
|
+
|
|
3
|
+
Bob is a lackadaisical teenager. In conversation, his responses are very limited.
|
|
4
|
+
|
|
5
|
+
Bob answers 'Sure.' if you ask him a question.
|
|
6
|
+
|
|
7
|
+
He answers 'Whoa, chill out!' if you yell at him.
|
|
8
|
+
|
|
9
|
+
He says 'Fine. Be that way!' if you address him without actually saying
|
|
10
|
+
anything.
|
|
11
|
+
|
|
12
|
+
He answers 'Whatever.' to anything else.
|
|
13
|
+
|
|
14
|
+
## Elm Installation
|
|
15
|
+
|
|
16
|
+
Refer to the [Exercism help page](http://exercism.io/languages/elm) for Elm
|
|
17
|
+
installation and learning resources.
|
|
18
|
+
|
|
19
|
+
## Writing the Code
|
|
20
|
+
|
|
21
|
+
The first time you start an exercise, you'll need to ensure you have the
|
|
22
|
+
appropriate dependencies installed.
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
$ npm install
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
Execute the tests with:
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
$ npm test
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
Automatically run tests again when you save changes:
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
$ npm run watch
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
As you work your way through the test suite, be sure to remove the `skip <|`
|
|
41
|
+
calls from each test until you get them all passing!
|
|
42
|
+
|
|
43
|
+
## Source
|
|
44
|
+
|
|
45
|
+
Inspired by the 'Deaf Grandma' exercise in Chris Pine's Learn to Program tutorial. [http://pine.fm/LearnToProgram/?Chapter=06](http://pine.fm/LearnToProgram/?Chapter=06)
|
|
46
|
+
|
|
47
|
+
## Submitting Incomplete Solutions
|
|
48
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# Difference Of Squares
|
|
2
|
+
|
|
3
|
+
Find the difference between the square of the sum and the sum of the squares of the first N natural numbers.
|
|
4
|
+
|
|
5
|
+
The square of the sum of the first ten natural numbers is
|
|
6
|
+
(1 + 2 + ... + 10)² = 55² = 3025.
|
|
7
|
+
|
|
8
|
+
The sum of the squares of the first ten natural numbers is
|
|
9
|
+
1² + 2² + ... + 10² = 385.
|
|
10
|
+
|
|
11
|
+
Hence the difference between the square of the sum of the first
|
|
12
|
+
ten natural numbers and the sum of the squares of the first ten
|
|
13
|
+
natural numbers is 3025 - 385 = 2640.
|
|
14
|
+
|
|
15
|
+
## Elm Installation
|
|
16
|
+
|
|
17
|
+
Refer to the [Exercism help page](http://exercism.io/languages/elm) for Elm
|
|
18
|
+
installation and learning resources.
|
|
19
|
+
|
|
20
|
+
## Writing the Code
|
|
21
|
+
|
|
22
|
+
The first time you start an exercise, you'll need to ensure you have the
|
|
23
|
+
appropriate dependencies installed.
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
$ npm install
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Execute the tests with:
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
$ npm test
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
Automatically run tests again when you save changes:
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
$ npm run watch
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
As you work your way through the test suite, be sure to remove the `skip <|`
|
|
42
|
+
calls from each test until you get them all passing!
|
|
43
|
+
|
|
44
|
+
## Source
|
|
45
|
+
|
|
46
|
+
Problem 6 at Project Euler [http://projecteuler.net/problem=6](http://projecteuler.net/problem=6)
|
|
47
|
+
|
|
48
|
+
## Submitting Incomplete Solutions
|
|
49
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|