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
|
@@ -0,0 +1,353 @@
|
|
|
1
|
+
# Beer Song
|
|
2
|
+
|
|
3
|
+
Produce the lyrics to that beloved classic, that field-trip favorite: 99 Bottles of Beer on the Wall.
|
|
4
|
+
|
|
5
|
+
Note that not all verses are identical.
|
|
6
|
+
|
|
7
|
+
```plain
|
|
8
|
+
99 bottles of beer on the wall, 99 bottles of beer.
|
|
9
|
+
Take one down and pass it around, 98 bottles of beer on the wall.
|
|
10
|
+
|
|
11
|
+
98 bottles of beer on the wall, 98 bottles of beer.
|
|
12
|
+
Take one down and pass it around, 97 bottles of beer on the wall.
|
|
13
|
+
|
|
14
|
+
97 bottles of beer on the wall, 97 bottles of beer.
|
|
15
|
+
Take one down and pass it around, 96 bottles of beer on the wall.
|
|
16
|
+
|
|
17
|
+
96 bottles of beer on the wall, 96 bottles of beer.
|
|
18
|
+
Take one down and pass it around, 95 bottles of beer on the wall.
|
|
19
|
+
|
|
20
|
+
95 bottles of beer on the wall, 95 bottles of beer.
|
|
21
|
+
Take one down and pass it around, 94 bottles of beer on the wall.
|
|
22
|
+
|
|
23
|
+
94 bottles of beer on the wall, 94 bottles of beer.
|
|
24
|
+
Take one down and pass it around, 93 bottles of beer on the wall.
|
|
25
|
+
|
|
26
|
+
93 bottles of beer on the wall, 93 bottles of beer.
|
|
27
|
+
Take one down and pass it around, 92 bottles of beer on the wall.
|
|
28
|
+
|
|
29
|
+
92 bottles of beer on the wall, 92 bottles of beer.
|
|
30
|
+
Take one down and pass it around, 91 bottles of beer on the wall.
|
|
31
|
+
|
|
32
|
+
91 bottles of beer on the wall, 91 bottles of beer.
|
|
33
|
+
Take one down and pass it around, 90 bottles of beer on the wall.
|
|
34
|
+
|
|
35
|
+
90 bottles of beer on the wall, 90 bottles of beer.
|
|
36
|
+
Take one down and pass it around, 89 bottles of beer on the wall.
|
|
37
|
+
|
|
38
|
+
89 bottles of beer on the wall, 89 bottles of beer.
|
|
39
|
+
Take one down and pass it around, 88 bottles of beer on the wall.
|
|
40
|
+
|
|
41
|
+
88 bottles of beer on the wall, 88 bottles of beer.
|
|
42
|
+
Take one down and pass it around, 87 bottles of beer on the wall.
|
|
43
|
+
|
|
44
|
+
87 bottles of beer on the wall, 87 bottles of beer.
|
|
45
|
+
Take one down and pass it around, 86 bottles of beer on the wall.
|
|
46
|
+
|
|
47
|
+
86 bottles of beer on the wall, 86 bottles of beer.
|
|
48
|
+
Take one down and pass it around, 85 bottles of beer on the wall.
|
|
49
|
+
|
|
50
|
+
85 bottles of beer on the wall, 85 bottles of beer.
|
|
51
|
+
Take one down and pass it around, 84 bottles of beer on the wall.
|
|
52
|
+
|
|
53
|
+
84 bottles of beer on the wall, 84 bottles of beer.
|
|
54
|
+
Take one down and pass it around, 83 bottles of beer on the wall.
|
|
55
|
+
|
|
56
|
+
83 bottles of beer on the wall, 83 bottles of beer.
|
|
57
|
+
Take one down and pass it around, 82 bottles of beer on the wall.
|
|
58
|
+
|
|
59
|
+
82 bottles of beer on the wall, 82 bottles of beer.
|
|
60
|
+
Take one down and pass it around, 81 bottles of beer on the wall.
|
|
61
|
+
|
|
62
|
+
81 bottles of beer on the wall, 81 bottles of beer.
|
|
63
|
+
Take one down and pass it around, 80 bottles of beer on the wall.
|
|
64
|
+
|
|
65
|
+
80 bottles of beer on the wall, 80 bottles of beer.
|
|
66
|
+
Take one down and pass it around, 79 bottles of beer on the wall.
|
|
67
|
+
|
|
68
|
+
79 bottles of beer on the wall, 79 bottles of beer.
|
|
69
|
+
Take one down and pass it around, 78 bottles of beer on the wall.
|
|
70
|
+
|
|
71
|
+
78 bottles of beer on the wall, 78 bottles of beer.
|
|
72
|
+
Take one down and pass it around, 77 bottles of beer on the wall.
|
|
73
|
+
|
|
74
|
+
77 bottles of beer on the wall, 77 bottles of beer.
|
|
75
|
+
Take one down and pass it around, 76 bottles of beer on the wall.
|
|
76
|
+
|
|
77
|
+
76 bottles of beer on the wall, 76 bottles of beer.
|
|
78
|
+
Take one down and pass it around, 75 bottles of beer on the wall.
|
|
79
|
+
|
|
80
|
+
75 bottles of beer on the wall, 75 bottles of beer.
|
|
81
|
+
Take one down and pass it around, 74 bottles of beer on the wall.
|
|
82
|
+
|
|
83
|
+
74 bottles of beer on the wall, 74 bottles of beer.
|
|
84
|
+
Take one down and pass it around, 73 bottles of beer on the wall.
|
|
85
|
+
|
|
86
|
+
73 bottles of beer on the wall, 73 bottles of beer.
|
|
87
|
+
Take one down and pass it around, 72 bottles of beer on the wall.
|
|
88
|
+
|
|
89
|
+
72 bottles of beer on the wall, 72 bottles of beer.
|
|
90
|
+
Take one down and pass it around, 71 bottles of beer on the wall.
|
|
91
|
+
|
|
92
|
+
71 bottles of beer on the wall, 71 bottles of beer.
|
|
93
|
+
Take one down and pass it around, 70 bottles of beer on the wall.
|
|
94
|
+
|
|
95
|
+
70 bottles of beer on the wall, 70 bottles of beer.
|
|
96
|
+
Take one down and pass it around, 69 bottles of beer on the wall.
|
|
97
|
+
|
|
98
|
+
69 bottles of beer on the wall, 69 bottles of beer.
|
|
99
|
+
Take one down and pass it around, 68 bottles of beer on the wall.
|
|
100
|
+
|
|
101
|
+
68 bottles of beer on the wall, 68 bottles of beer.
|
|
102
|
+
Take one down and pass it around, 67 bottles of beer on the wall.
|
|
103
|
+
|
|
104
|
+
67 bottles of beer on the wall, 67 bottles of beer.
|
|
105
|
+
Take one down and pass it around, 66 bottles of beer on the wall.
|
|
106
|
+
|
|
107
|
+
66 bottles of beer on the wall, 66 bottles of beer.
|
|
108
|
+
Take one down and pass it around, 65 bottles of beer on the wall.
|
|
109
|
+
|
|
110
|
+
65 bottles of beer on the wall, 65 bottles of beer.
|
|
111
|
+
Take one down and pass it around, 64 bottles of beer on the wall.
|
|
112
|
+
|
|
113
|
+
64 bottles of beer on the wall, 64 bottles of beer.
|
|
114
|
+
Take one down and pass it around, 63 bottles of beer on the wall.
|
|
115
|
+
|
|
116
|
+
63 bottles of beer on the wall, 63 bottles of beer.
|
|
117
|
+
Take one down and pass it around, 62 bottles of beer on the wall.
|
|
118
|
+
|
|
119
|
+
62 bottles of beer on the wall, 62 bottles of beer.
|
|
120
|
+
Take one down and pass it around, 61 bottles of beer on the wall.
|
|
121
|
+
|
|
122
|
+
61 bottles of beer on the wall, 61 bottles of beer.
|
|
123
|
+
Take one down and pass it around, 60 bottles of beer on the wall.
|
|
124
|
+
|
|
125
|
+
60 bottles of beer on the wall, 60 bottles of beer.
|
|
126
|
+
Take one down and pass it around, 59 bottles of beer on the wall.
|
|
127
|
+
|
|
128
|
+
59 bottles of beer on the wall, 59 bottles of beer.
|
|
129
|
+
Take one down and pass it around, 58 bottles of beer on the wall.
|
|
130
|
+
|
|
131
|
+
58 bottles of beer on the wall, 58 bottles of beer.
|
|
132
|
+
Take one down and pass it around, 57 bottles of beer on the wall.
|
|
133
|
+
|
|
134
|
+
57 bottles of beer on the wall, 57 bottles of beer.
|
|
135
|
+
Take one down and pass it around, 56 bottles of beer on the wall.
|
|
136
|
+
|
|
137
|
+
56 bottles of beer on the wall, 56 bottles of beer.
|
|
138
|
+
Take one down and pass it around, 55 bottles of beer on the wall.
|
|
139
|
+
|
|
140
|
+
55 bottles of beer on the wall, 55 bottles of beer.
|
|
141
|
+
Take one down and pass it around, 54 bottles of beer on the wall.
|
|
142
|
+
|
|
143
|
+
54 bottles of beer on the wall, 54 bottles of beer.
|
|
144
|
+
Take one down and pass it around, 53 bottles of beer on the wall.
|
|
145
|
+
|
|
146
|
+
53 bottles of beer on the wall, 53 bottles of beer.
|
|
147
|
+
Take one down and pass it around, 52 bottles of beer on the wall.
|
|
148
|
+
|
|
149
|
+
52 bottles of beer on the wall, 52 bottles of beer.
|
|
150
|
+
Take one down and pass it around, 51 bottles of beer on the wall.
|
|
151
|
+
|
|
152
|
+
51 bottles of beer on the wall, 51 bottles of beer.
|
|
153
|
+
Take one down and pass it around, 50 bottles of beer on the wall.
|
|
154
|
+
|
|
155
|
+
50 bottles of beer on the wall, 50 bottles of beer.
|
|
156
|
+
Take one down and pass it around, 49 bottles of beer on the wall.
|
|
157
|
+
|
|
158
|
+
49 bottles of beer on the wall, 49 bottles of beer.
|
|
159
|
+
Take one down and pass it around, 48 bottles of beer on the wall.
|
|
160
|
+
|
|
161
|
+
48 bottles of beer on the wall, 48 bottles of beer.
|
|
162
|
+
Take one down and pass it around, 47 bottles of beer on the wall.
|
|
163
|
+
|
|
164
|
+
47 bottles of beer on the wall, 47 bottles of beer.
|
|
165
|
+
Take one down and pass it around, 46 bottles of beer on the wall.
|
|
166
|
+
|
|
167
|
+
46 bottles of beer on the wall, 46 bottles of beer.
|
|
168
|
+
Take one down and pass it around, 45 bottles of beer on the wall.
|
|
169
|
+
|
|
170
|
+
45 bottles of beer on the wall, 45 bottles of beer.
|
|
171
|
+
Take one down and pass it around, 44 bottles of beer on the wall.
|
|
172
|
+
|
|
173
|
+
44 bottles of beer on the wall, 44 bottles of beer.
|
|
174
|
+
Take one down and pass it around, 43 bottles of beer on the wall.
|
|
175
|
+
|
|
176
|
+
43 bottles of beer on the wall, 43 bottles of beer.
|
|
177
|
+
Take one down and pass it around, 42 bottles of beer on the wall.
|
|
178
|
+
|
|
179
|
+
42 bottles of beer on the wall, 42 bottles of beer.
|
|
180
|
+
Take one down and pass it around, 41 bottles of beer on the wall.
|
|
181
|
+
|
|
182
|
+
41 bottles of beer on the wall, 41 bottles of beer.
|
|
183
|
+
Take one down and pass it around, 40 bottles of beer on the wall.
|
|
184
|
+
|
|
185
|
+
40 bottles of beer on the wall, 40 bottles of beer.
|
|
186
|
+
Take one down and pass it around, 39 bottles of beer on the wall.
|
|
187
|
+
|
|
188
|
+
39 bottles of beer on the wall, 39 bottles of beer.
|
|
189
|
+
Take one down and pass it around, 38 bottles of beer on the wall.
|
|
190
|
+
|
|
191
|
+
38 bottles of beer on the wall, 38 bottles of beer.
|
|
192
|
+
Take one down and pass it around, 37 bottles of beer on the wall.
|
|
193
|
+
|
|
194
|
+
37 bottles of beer on the wall, 37 bottles of beer.
|
|
195
|
+
Take one down and pass it around, 36 bottles of beer on the wall.
|
|
196
|
+
|
|
197
|
+
36 bottles of beer on the wall, 36 bottles of beer.
|
|
198
|
+
Take one down and pass it around, 35 bottles of beer on the wall.
|
|
199
|
+
|
|
200
|
+
35 bottles of beer on the wall, 35 bottles of beer.
|
|
201
|
+
Take one down and pass it around, 34 bottles of beer on the wall.
|
|
202
|
+
|
|
203
|
+
34 bottles of beer on the wall, 34 bottles of beer.
|
|
204
|
+
Take one down and pass it around, 33 bottles of beer on the wall.
|
|
205
|
+
|
|
206
|
+
33 bottles of beer on the wall, 33 bottles of beer.
|
|
207
|
+
Take one down and pass it around, 32 bottles of beer on the wall.
|
|
208
|
+
|
|
209
|
+
32 bottles of beer on the wall, 32 bottles of beer.
|
|
210
|
+
Take one down and pass it around, 31 bottles of beer on the wall.
|
|
211
|
+
|
|
212
|
+
31 bottles of beer on the wall, 31 bottles of beer.
|
|
213
|
+
Take one down and pass it around, 30 bottles of beer on the wall.
|
|
214
|
+
|
|
215
|
+
30 bottles of beer on the wall, 30 bottles of beer.
|
|
216
|
+
Take one down and pass it around, 29 bottles of beer on the wall.
|
|
217
|
+
|
|
218
|
+
29 bottles of beer on the wall, 29 bottles of beer.
|
|
219
|
+
Take one down and pass it around, 28 bottles of beer on the wall.
|
|
220
|
+
|
|
221
|
+
28 bottles of beer on the wall, 28 bottles of beer.
|
|
222
|
+
Take one down and pass it around, 27 bottles of beer on the wall.
|
|
223
|
+
|
|
224
|
+
27 bottles of beer on the wall, 27 bottles of beer.
|
|
225
|
+
Take one down and pass it around, 26 bottles of beer on the wall.
|
|
226
|
+
|
|
227
|
+
26 bottles of beer on the wall, 26 bottles of beer.
|
|
228
|
+
Take one down and pass it around, 25 bottles of beer on the wall.
|
|
229
|
+
|
|
230
|
+
25 bottles of beer on the wall, 25 bottles of beer.
|
|
231
|
+
Take one down and pass it around, 24 bottles of beer on the wall.
|
|
232
|
+
|
|
233
|
+
24 bottles of beer on the wall, 24 bottles of beer.
|
|
234
|
+
Take one down and pass it around, 23 bottles of beer on the wall.
|
|
235
|
+
|
|
236
|
+
23 bottles of beer on the wall, 23 bottles of beer.
|
|
237
|
+
Take one down and pass it around, 22 bottles of beer on the wall.
|
|
238
|
+
|
|
239
|
+
22 bottles of beer on the wall, 22 bottles of beer.
|
|
240
|
+
Take one down and pass it around, 21 bottles of beer on the wall.
|
|
241
|
+
|
|
242
|
+
21 bottles of beer on the wall, 21 bottles of beer.
|
|
243
|
+
Take one down and pass it around, 20 bottles of beer on the wall.
|
|
244
|
+
|
|
245
|
+
20 bottles of beer on the wall, 20 bottles of beer.
|
|
246
|
+
Take one down and pass it around, 19 bottles of beer on the wall.
|
|
247
|
+
|
|
248
|
+
19 bottles of beer on the wall, 19 bottles of beer.
|
|
249
|
+
Take one down and pass it around, 18 bottles of beer on the wall.
|
|
250
|
+
|
|
251
|
+
18 bottles of beer on the wall, 18 bottles of beer.
|
|
252
|
+
Take one down and pass it around, 17 bottles of beer on the wall.
|
|
253
|
+
|
|
254
|
+
17 bottles of beer on the wall, 17 bottles of beer.
|
|
255
|
+
Take one down and pass it around, 16 bottles of beer on the wall.
|
|
256
|
+
|
|
257
|
+
16 bottles of beer on the wall, 16 bottles of beer.
|
|
258
|
+
Take one down and pass it around, 15 bottles of beer on the wall.
|
|
259
|
+
|
|
260
|
+
15 bottles of beer on the wall, 15 bottles of beer.
|
|
261
|
+
Take one down and pass it around, 14 bottles of beer on the wall.
|
|
262
|
+
|
|
263
|
+
14 bottles of beer on the wall, 14 bottles of beer.
|
|
264
|
+
Take one down and pass it around, 13 bottles of beer on the wall.
|
|
265
|
+
|
|
266
|
+
13 bottles of beer on the wall, 13 bottles of beer.
|
|
267
|
+
Take one down and pass it around, 12 bottles of beer on the wall.
|
|
268
|
+
|
|
269
|
+
12 bottles of beer on the wall, 12 bottles of beer.
|
|
270
|
+
Take one down and pass it around, 11 bottles of beer on the wall.
|
|
271
|
+
|
|
272
|
+
11 bottles of beer on the wall, 11 bottles of beer.
|
|
273
|
+
Take one down and pass it around, 10 bottles of beer on the wall.
|
|
274
|
+
|
|
275
|
+
10 bottles of beer on the wall, 10 bottles of beer.
|
|
276
|
+
Take one down and pass it around, 9 bottles of beer on the wall.
|
|
277
|
+
|
|
278
|
+
9 bottles of beer on the wall, 9 bottles of beer.
|
|
279
|
+
Take one down and pass it around, 8 bottles of beer on the wall.
|
|
280
|
+
|
|
281
|
+
8 bottles of beer on the wall, 8 bottles of beer.
|
|
282
|
+
Take one down and pass it around, 7 bottles of beer on the wall.
|
|
283
|
+
|
|
284
|
+
7 bottles of beer on the wall, 7 bottles of beer.
|
|
285
|
+
Take one down and pass it around, 6 bottles of beer on the wall.
|
|
286
|
+
|
|
287
|
+
6 bottles of beer on the wall, 6 bottles of beer.
|
|
288
|
+
Take one down and pass it around, 5 bottles of beer on the wall.
|
|
289
|
+
|
|
290
|
+
5 bottles of beer on the wall, 5 bottles of beer.
|
|
291
|
+
Take one down and pass it around, 4 bottles of beer on the wall.
|
|
292
|
+
|
|
293
|
+
4 bottles of beer on the wall, 4 bottles of beer.
|
|
294
|
+
Take one down and pass it around, 3 bottles of beer on the wall.
|
|
295
|
+
|
|
296
|
+
3 bottles of beer on the wall, 3 bottles of beer.
|
|
297
|
+
Take one down and pass it around, 2 bottles of beer on the wall.
|
|
298
|
+
|
|
299
|
+
2 bottles of beer on the wall, 2 bottles of beer.
|
|
300
|
+
Take one down and pass it around, 1 bottle of beer on the wall.
|
|
301
|
+
|
|
302
|
+
1 bottle of beer on the wall, 1 bottle of beer.
|
|
303
|
+
Take it down and pass it around, no more bottles of beer on the wall.
|
|
304
|
+
|
|
305
|
+
No more bottles of beer on the wall, no more bottles of beer.
|
|
306
|
+
Go to the store and buy some more, 99 bottles of beer on the wall.
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
## For bonus points
|
|
310
|
+
|
|
311
|
+
Did you get the tests passing and the code clean? If you want to, these
|
|
312
|
+
are some additional things you could try:
|
|
313
|
+
|
|
314
|
+
* Remove as much duplication as you possibly can.
|
|
315
|
+
* Optimize for readability, even if it means introducing duplication.
|
|
316
|
+
* If you've removed all the duplication, do you have a lot of
|
|
317
|
+
conditionals? Try replacing the conditionals with polymorphism, if it
|
|
318
|
+
applies in this language. How readable is it?
|
|
319
|
+
|
|
320
|
+
Then please share your thoughts in a comment on the submission. Did this
|
|
321
|
+
experiment make the code better? Worse? Did you learn anything from it?
|
|
322
|
+
|
|
323
|
+
## Setup
|
|
324
|
+
|
|
325
|
+
Go through the setup instructions for TypeScript to
|
|
326
|
+
install the necessary dependencies:
|
|
327
|
+
|
|
328
|
+
http://exercism.io/languages/typescript
|
|
329
|
+
|
|
330
|
+
## Requirements
|
|
331
|
+
|
|
332
|
+
Install assignment dependencies:
|
|
333
|
+
|
|
334
|
+
```bash
|
|
335
|
+
$ yarn install
|
|
336
|
+
```
|
|
337
|
+
|
|
338
|
+
## Making the test suite pass
|
|
339
|
+
|
|
340
|
+
Execute the tests with:
|
|
341
|
+
|
|
342
|
+
```bash
|
|
343
|
+
$ yarn test
|
|
344
|
+
```
|
|
345
|
+
|
|
346
|
+
|
|
347
|
+
|
|
348
|
+
## Source
|
|
349
|
+
|
|
350
|
+
Learn to Program by Chris Pine [http://pine.fm/LearnToProgram/?Chapter=06](http://pine.fm/LearnToProgram/?Chapter=06)
|
|
351
|
+
|
|
352
|
+
## Submitting Incomplete Solutions
|
|
353
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
|
@@ -0,0 +1,44 @@
|
|
|
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
|
+
## Setup
|
|
15
|
+
|
|
16
|
+
Go through the setup instructions for TypeScript to
|
|
17
|
+
install the necessary dependencies:
|
|
18
|
+
|
|
19
|
+
http://exercism.io/languages/typescript
|
|
20
|
+
|
|
21
|
+
## Requirements
|
|
22
|
+
|
|
23
|
+
Install assignment dependencies:
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
$ yarn install
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## Making the test suite pass
|
|
30
|
+
|
|
31
|
+
Execute the tests with:
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
$ yarn test
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
## Source
|
|
40
|
+
|
|
41
|
+
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)
|
|
42
|
+
|
|
43
|
+
## Submitting Incomplete Solutions
|
|
44
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
|
@@ -0,0 +1,45 @@
|
|
|
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
|
+
## Setup
|
|
16
|
+
|
|
17
|
+
Go through the setup instructions for TypeScript to
|
|
18
|
+
install the necessary dependencies:
|
|
19
|
+
|
|
20
|
+
http://exercism.io/languages/typescript
|
|
21
|
+
|
|
22
|
+
## Requirements
|
|
23
|
+
|
|
24
|
+
Install assignment dependencies:
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
$ yarn install
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Making the test suite pass
|
|
31
|
+
|
|
32
|
+
Execute the tests with:
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
$ yarn test
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
## Source
|
|
41
|
+
|
|
42
|
+
Problem 6 at Project Euler [http://projecteuler.net/problem=6](http://projecteuler.net/problem=6)
|
|
43
|
+
|
|
44
|
+
## Submitting Incomplete Solutions
|
|
45
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
# Etl
|
|
2
|
+
|
|
3
|
+
We are going to do the `Transform` step of an Extract-Transform-Load.
|
|
4
|
+
|
|
5
|
+
### ETL
|
|
6
|
+
Extract-Transform-Load (ETL) is a fancy way of saying, "We have some crufty, legacy data over in this system, and now we need it in this shiny new system over here, so
|
|
7
|
+
we're going to migrate this."
|
|
8
|
+
|
|
9
|
+
(Typically, this is followed by, "We're only going to need to run this
|
|
10
|
+
once." That's then typically followed by much forehead slapping and
|
|
11
|
+
moaning about how stupid we could possibly be.)
|
|
12
|
+
|
|
13
|
+
### The goal
|
|
14
|
+
We're going to extract some scrabble scores from a legacy system.
|
|
15
|
+
|
|
16
|
+
The old system stored a list of letters per score:
|
|
17
|
+
|
|
18
|
+
- 1 point: "A", "E", "I", "O", "U", "L", "N", "R", "S", "T",
|
|
19
|
+
- 2 points: "D", "G",
|
|
20
|
+
- 3 points: "B", "C", "M", "P",
|
|
21
|
+
- 4 points: "F", "H", "V", "W", "Y",
|
|
22
|
+
- 5 points: "K",
|
|
23
|
+
- 8 points: "J", "X",
|
|
24
|
+
- 10 points: "Q", "Z",
|
|
25
|
+
|
|
26
|
+
The shiny new scrabble system instead stores the score per letter, which
|
|
27
|
+
makes it much faster and easier to calculate the score for a word. It
|
|
28
|
+
also stores the letters in lower-case regardless of the case of the
|
|
29
|
+
input letters:
|
|
30
|
+
|
|
31
|
+
- "a" is worth 1 point.
|
|
32
|
+
- "b" is worth 3 points.
|
|
33
|
+
- "c" is worth 3 points.
|
|
34
|
+
- "d" is worth 2 points.
|
|
35
|
+
- Etc.
|
|
36
|
+
|
|
37
|
+
Your mission, should you choose to accept it, is to transform the legacy data
|
|
38
|
+
format to the shiny new format.
|
|
39
|
+
|
|
40
|
+
### Notes
|
|
41
|
+
|
|
42
|
+
A final note about scoring, Scrabble is played around the world in a
|
|
43
|
+
variety of languages, each with its own unique scoring table. For
|
|
44
|
+
example, an "E" is scored at 2 in the Māori-language version of the
|
|
45
|
+
game while being scored at 4 in the Hawaiian-language version.
|
|
46
|
+
|
|
47
|
+
## Setup
|
|
48
|
+
|
|
49
|
+
Go through the setup instructions for TypeScript to
|
|
50
|
+
install the necessary dependencies:
|
|
51
|
+
|
|
52
|
+
http://exercism.io/languages/typescript
|
|
53
|
+
|
|
54
|
+
## Requirements
|
|
55
|
+
|
|
56
|
+
Install assignment dependencies:
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
$ yarn install
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
## Making the test suite pass
|
|
63
|
+
|
|
64
|
+
Execute the tests with:
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
$ yarn test
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
## Source
|
|
73
|
+
|
|
74
|
+
The Jumpstart Lab team [http://jumpstartlab.com](http://jumpstartlab.com)
|
|
75
|
+
|
|
76
|
+
## Submitting Incomplete Solutions
|
|
77
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
# Food Chain
|
|
2
|
+
|
|
3
|
+
Generate the lyrics of the song 'I Know an Old Lady Who Swallowed a Fly'.
|
|
4
|
+
|
|
5
|
+
While you could copy/paste the lyrics,
|
|
6
|
+
or read them from a file, this problem is much more
|
|
7
|
+
interesting if you approach it algorithmically.
|
|
8
|
+
|
|
9
|
+
This is a [cumulative song](http://en.wikipedia.org/wiki/Cumulative_song) of unknown origin.
|
|
10
|
+
|
|
11
|
+
This is one of many common variants.
|
|
12
|
+
|
|
13
|
+
```plain
|
|
14
|
+
I know an old lady who swallowed a fly.
|
|
15
|
+
I don't know why she swallowed the fly. Perhaps she'll die.
|
|
16
|
+
|
|
17
|
+
I know an old lady who swallowed a spider.
|
|
18
|
+
It wriggled and jiggled and tickled inside her.
|
|
19
|
+
She swallowed the spider to catch the fly.
|
|
20
|
+
I don't know why she swallowed the fly. Perhaps she'll die.
|
|
21
|
+
|
|
22
|
+
I know an old lady who swallowed a bird.
|
|
23
|
+
How absurd to swallow a bird!
|
|
24
|
+
She swallowed the bird to catch the spider that wriggled and jiggled and tickled inside her.
|
|
25
|
+
She swallowed the spider to catch the fly.
|
|
26
|
+
I don't know why she swallowed the fly. Perhaps she'll die.
|
|
27
|
+
|
|
28
|
+
I know an old lady who swallowed a cat.
|
|
29
|
+
Imagine that, to swallow a cat!
|
|
30
|
+
She swallowed the cat to catch the bird.
|
|
31
|
+
She swallowed the bird to catch the spider that wriggled and jiggled and tickled inside her.
|
|
32
|
+
She swallowed the spider to catch the fly.
|
|
33
|
+
I don't know why she swallowed the fly. Perhaps she'll die.
|
|
34
|
+
|
|
35
|
+
I know an old lady who swallowed a dog.
|
|
36
|
+
What a hog, to swallow a dog!
|
|
37
|
+
She swallowed the dog to catch the cat.
|
|
38
|
+
She swallowed the cat to catch the bird.
|
|
39
|
+
She swallowed the bird to catch the spider that wriggled and jiggled and tickled inside her.
|
|
40
|
+
She swallowed the spider to catch the fly.
|
|
41
|
+
I don't know why she swallowed the fly. Perhaps she'll die.
|
|
42
|
+
|
|
43
|
+
I know an old lady who swallowed a goat.
|
|
44
|
+
Just opened her throat and swallowed a goat!
|
|
45
|
+
She swallowed the goat to catch the dog.
|
|
46
|
+
She swallowed the dog to catch the cat.
|
|
47
|
+
She swallowed the cat to catch the bird.
|
|
48
|
+
She swallowed the bird to catch the spider that wriggled and jiggled and tickled inside her.
|
|
49
|
+
She swallowed the spider to catch the fly.
|
|
50
|
+
I don't know why she swallowed the fly. Perhaps she'll die.
|
|
51
|
+
|
|
52
|
+
I know an old lady who swallowed a cow.
|
|
53
|
+
I don't know how she swallowed a cow!
|
|
54
|
+
She swallowed the cow to catch the goat.
|
|
55
|
+
She swallowed the goat to catch the dog.
|
|
56
|
+
She swallowed the dog to catch the cat.
|
|
57
|
+
She swallowed the cat to catch the bird.
|
|
58
|
+
She swallowed the bird to catch the spider that wriggled and jiggled and tickled inside her.
|
|
59
|
+
She swallowed the spider to catch the fly.
|
|
60
|
+
I don't know why she swallowed the fly. Perhaps she'll die.
|
|
61
|
+
|
|
62
|
+
I know an old lady who swallowed a horse.
|
|
63
|
+
She's dead, of course!
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## Setup
|
|
67
|
+
|
|
68
|
+
Go through the setup instructions for TypeScript to
|
|
69
|
+
install the necessary dependencies:
|
|
70
|
+
|
|
71
|
+
http://exercism.io/languages/typescript
|
|
72
|
+
|
|
73
|
+
## Requirements
|
|
74
|
+
|
|
75
|
+
Install assignment dependencies:
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
$ yarn install
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
## Making the test suite pass
|
|
82
|
+
|
|
83
|
+
Execute the tests with:
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
$ yarn test
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
## Source
|
|
92
|
+
|
|
93
|
+
Wikipedia [http://en.wikipedia.org/wiki/There_Was_an_Old_Lady_Who_Swallowed_a_Fly](http://en.wikipedia.org/wiki/There_Was_an_Old_Lady_Who_Swallowed_a_Fly)
|
|
94
|
+
|
|
95
|
+
## Submitting Incomplete Solutions
|
|
96
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Gigasecond
|
|
2
|
+
|
|
3
|
+
Calculate the moment when someone has lived for 10^9 seconds.
|
|
4
|
+
|
|
5
|
+
A gigasecond is 10^9 (1,000,000,000) seconds.
|
|
6
|
+
|
|
7
|
+
## Setup
|
|
8
|
+
|
|
9
|
+
Go through the setup instructions for TypeScript to
|
|
10
|
+
install the necessary dependencies:
|
|
11
|
+
|
|
12
|
+
http://exercism.io/languages/typescript
|
|
13
|
+
|
|
14
|
+
## Requirements
|
|
15
|
+
|
|
16
|
+
Install assignment dependencies:
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
$ yarn install
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Making the test suite pass
|
|
23
|
+
|
|
24
|
+
Execute the tests with:
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
$ yarn test
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
## Source
|
|
33
|
+
|
|
34
|
+
Chapter 9 in Chris Pine's online Learn to Program tutorial. [http://pine.fm/LearnToProgram/?Chapter=09](http://pine.fm/LearnToProgram/?Chapter=09)
|
|
35
|
+
|
|
36
|
+
## Submitting Incomplete Solutions
|
|
37
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|