Skip to content

☕ 27 katas in 27 languages (not only CoffeeScript, GitHub!)

License

Notifications You must be signed in to change notification settings

bfontaine/Katas

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Apr 5, 2021
6f4ce06 · Apr 5, 2021
Sep 6, 2014
Sep 6, 2014
Sep 6, 2014
Aug 9, 2017
Sep 6, 2014
Jan 31, 2018
Sep 6, 2014
Sep 6, 2014
Sep 6, 2014
Sep 6, 2014
Sep 6, 2014
Aug 12, 2019
Sep 6, 2014
Aug 18, 2019
Sep 6, 2014
Sep 6, 2014
Sep 6, 2014
Sep 6, 2014
Sep 6, 2014
Sep 6, 2014
Sep 6, 2014
Jan 28, 2015
Sep 6, 2014
Sep 6, 2014
Sep 7, 2014
Sep 6, 2014
Sep 6, 2014
Sep 6, 2014
Apr 5, 2021
Aug 12, 2019
Apr 5, 2021

Repository files navigation

Katas

Here are 27 solved katas; each in a different language.

Sources: CodingDojo, Ruby Quiz, and CodeKata.

  • Language: Ruby
  • Solution: KataBankOCR.rb
  • Tests: KataBankOCR_test.rb
  • Language: Java
  • Solution: KataFizzBuzz.java
  • Tests: KataFizzBuzzTest.java; see junit.sh.
  • Language: Python
  • Solution: KataPotter.py
  • Tests: KataPotter_test.py
  • Remark: It needs more tests to know if it's really solved
  • Language: Bash
  • Solution: KataRomanNumerals.sh
  • Tests: KataRomanNumerals_test.sh; see also assert.sh.
  • Language: JavaScript
  • Solution: KataRomanCalculator.js
  • Tests: KataRomanCalculator_tests.js
  • Language: PHP
  • Solution: KataNumberToLCD.php
  • Tests: KataNumberToLCD_tests.php
  • Language: C
  • Solution: KataTennis.c
  • Tests: KataTennis_tests.c
  • Language: Scala
  • Solution: KataBowling.scala
  • Tests: KataBowlingTest.scala using ScalaTest 1.7.1; see KataBowling_tests.sh for command-line shortcuts.
  • Language: CoffeeScript
  • Solution: KataPokerHands.coffee
  • Tests: KataPokerHands_tests.coffee using jasmine-node
  • Language: Io
  • Solution: KataMinesweeper.io
  • Tests: KataMinesweeper_tests.io
  • Language: Lisp
  • Solution: KataKarateChop.lisp
  • Tests: KataKarateChop_tests.lisp
  • Language: Perl
  • Solution: KataReversi.pl
  • Tests: KataReversi_tests.pl
  • Language: Groovy
  • Solution: KataGameOfLife.groovy
  • Tests: KataGameOfLife_tests.groovy; see also junit_gameoflife.sh.
  • Language: Smalltalk
  • Solution: KataSecretSantas.st
  • Tests: KataSecretSantas_tests.st; see also gst_tests.sh.
  • Language: C++
  • Solution: KataWordWrap.cpp
  • Tests: KataWordWrap_tests.cpp using CppUnit
  • Language: Forth
  • Solution: KataDiversion.fth
  • Tests: KataDiversion_tests.fth
  • Language: Lua
  • Solution: KataAnimalQuiz.lua
  • Tests: KataAnimalQuiz_tests.lua using lunit

This is a slightly modified version of the RubyQuiz #54 that doesn't use a bits index.

  • Language: OCaml
  • Solution: kataWordQuery.ml
  • Tests: kataWordQueryTests.ml using OUnit; see also kataWordQueryTests.sh.
  • Language: Erlang
  • Solution: katacheckout.erl
  • Tests: katacheckout_tests.erl using EUnit; see also katacheckout_tests.sh.
  • Language: Go
  • Solution: katadependencies.go
  • Tests: katadependencies_test.go
  • Language: Clojure
  • Solution: src/kata_trigrams/core.clj; use lein run generate f1.txt f2.json to index f1.txt into f2.json, then lein run generate f2.json 42 to generate 42 random words from the file f2.json
  • Tests: test/kata_trigrams/test/*.clj; use lein test.
  • Language: Rust (0.9)
  • Solution: kata_english_words.rs
  • Tests: kata_english_words_tests.rs; compile and run with make.
  • Language: Crystal (0.4.3)
  • Solution: kata_word_chains.cr
  • Tests: kata_word_chains_test.cr
  • Language: Commodore BASIC
  • Solution: kata_sort_chars.bas and a homemade crunched version, kata_sort_chars.crunch.bas
  • Tests: kata_sort_chars_tests.sh
  • Language: Prolog
  • Solution: kata_change.pl and kata_change_cli.pl. Use make then ./kata_change <sum>.
  • Tests: kata_change_tests.pl
  • Language: awk
  • Solution: ./code_cracker.awk -v key=<key>. It reads (and prints) one message per line.
  • Tests: ./code_cracker_tests.sh
  • Language: Julia
  • Solution: ./parse_id3.jl <file1.mp3> [...]
  • Tests: ./parse_id3_test.jl

About

☕ 27 katas in 27 languages (not only CoffeeScript, GitHub!)

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published