(+/ % #) finds the average of a list of numbers.
@@ -59,6 +59,14 @@ To understand how this works, you might try working with simpler sentences and t
By themselves, these experiments mean nothing, but if you know that +/ was finding the sum of a list and # was finding the length of a list and that % was dividing the two quantities (and looks almost like one of the classical division symbols) then these experiments might help confirm that you have understood things properly.
+== Some Perspective ==
+
+If you wish to use J you will also have to learn a few grammatical rules (J's parser has [http://www.jsoftware.com/help/dictionary/dicte.htm 9 reduction rules] and "shift" and "accept" - the above examples use four of those rules). J verbs have two definitions - a single argument "monadic" definition and a two argument "dyadic" definition. These terms are borrowed from music and are distinct from Haskell's use of the word "monad". The dyadic definitions are in some sense related to LISP's "cons cell" but are implemented as grammar rather than data structure, and are a pervasive part of the language.
+
+Another pervasive feature of the language is [[wp:Rank_(J_programming_language)|rank]].
+
+The language represents capabilities of hardware. For example, if language did not have an internal stack, a word's definition could not be used during the execution of that word. All current J implementations support recursion, but in some sense this is a convenience, and it's reasonable to imagine J implementations which do not (perhaps in a "compile to silicon" implementation).
+
== J on RosettaCode ==
Discussion of the goals of the J community on RC and general guidelines for presenting J solutions takes place at [[J/HouseStyle|House Style]].
diff --git a/Lang/J/Continued-fraction-Arithmetic-Construct-from-rational-number b/Lang/J/Continued-fraction-Arithmetic-Construct-from-rational-number
new file mode 120000
index 0000000000..186ec7d029
--- /dev/null
+++ b/Lang/J/Continued-fraction-Arithmetic-Construct-from-rational-number
@@ -0,0 +1 @@
+../../Task/Continued-fraction-Arithmetic-Construct-from-rational-number/J
\ No newline at end of file
diff --git a/Lang/J/Function-prototype b/Lang/J/Function-prototype
new file mode 120000
index 0000000000..0b80969605
--- /dev/null
+++ b/Lang/J/Function-prototype
@@ -0,0 +1 @@
+../../Task/Function-prototype/J
\ No newline at end of file
diff --git a/Lang/J/Harshad-or-Niven-series b/Lang/J/Harshad-or-Niven-series
new file mode 120000
index 0000000000..6c4b1d7c25
--- /dev/null
+++ b/Lang/J/Harshad-or-Niven-series
@@ -0,0 +1 @@
+../../Task/Harshad-or-Niven-series/J
\ No newline at end of file
diff --git a/Lang/J/Josephus-problem b/Lang/J/Josephus-problem
new file mode 120000
index 0000000000..a97b98ead6
--- /dev/null
+++ b/Lang/J/Josephus-problem
@@ -0,0 +1 @@
+../../Task/Josephus-problem/J
\ No newline at end of file
diff --git a/Lang/J/Mad-Libs b/Lang/J/Mad-Libs
new file mode 120000
index 0000000000..b922617a05
--- /dev/null
+++ b/Lang/J/Mad-Libs
@@ -0,0 +1 @@
+../../Task/Mad-Libs/J
\ No newline at end of file
diff --git a/Lang/Java/Averages-Mean-angle b/Lang/Java/Averages-Mean-angle
new file mode 120000
index 0000000000..d835e86c4d
--- /dev/null
+++ b/Lang/Java/Averages-Mean-angle
@@ -0,0 +1 @@
+../../Task/Averages-Mean-angle/Java
\ No newline at end of file
diff --git a/Lang/Java/Entropy b/Lang/Java/Entropy
new file mode 120000
index 0000000000..ad7a0fb32b
--- /dev/null
+++ b/Lang/Java/Entropy
@@ -0,0 +1 @@
+../../Task/Entropy/Java
\ No newline at end of file
diff --git a/Lang/Java/Globally-replace-text-in-several-files b/Lang/Java/Globally-replace-text-in-several-files
new file mode 120000
index 0000000000..09415a10e6
--- /dev/null
+++ b/Lang/Java/Globally-replace-text-in-several-files
@@ -0,0 +1 @@
+../../Task/Globally-replace-text-in-several-files/Java
\ No newline at end of file
diff --git a/Lang/Java/I-before-E-except-after-C b/Lang/Java/I-before-E-except-after-C
new file mode 120000
index 0000000000..f8bee84df4
--- /dev/null
+++ b/Lang/Java/I-before-E-except-after-C
@@ -0,0 +1 @@
+../../Task/I-before-E-except-after-C/Java
\ No newline at end of file
diff --git a/Lang/Java/Include-a-file b/Lang/Java/Include-a-file
new file mode 120000
index 0000000000..5bddf68614
--- /dev/null
+++ b/Lang/Java/Include-a-file
@@ -0,0 +1 @@
+../../Task/Include-a-file/Java
\ No newline at end of file
diff --git a/Lang/Java/Mad-Libs b/Lang/Java/Mad-Libs
new file mode 120000
index 0000000000..b02d42d43a
--- /dev/null
+++ b/Lang/Java/Mad-Libs
@@ -0,0 +1 @@
+../../Task/Mad-Libs/Java
\ No newline at end of file
diff --git a/Lang/Java/Remove-lines-from-a-file b/Lang/Java/Remove-lines-from-a-file
new file mode 120000
index 0000000000..7868597523
--- /dev/null
+++ b/Lang/Java/Remove-lines-from-a-file
@@ -0,0 +1 @@
+../../Task/Remove-lines-from-a-file/Java
\ No newline at end of file
diff --git a/Lang/Java/Seven-sided-dice-from-five-sided-dice b/Lang/Java/Seven-sided-dice-from-five-sided-dice
new file mode 120000
index 0000000000..4978b6b0ab
--- /dev/null
+++ b/Lang/Java/Seven-sided-dice-from-five-sided-dice
@@ -0,0 +1 @@
+../../Task/Seven-sided-dice-from-five-sided-dice/Java
\ No newline at end of file
diff --git a/Lang/Java/Sorting-algorithms-Bead-sort b/Lang/Java/Sorting-algorithms-Bead-sort
new file mode 120000
index 0000000000..c3e13d4d5b
--- /dev/null
+++ b/Lang/Java/Sorting-algorithms-Bead-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Bead-sort/Java
\ No newline at end of file
diff --git a/Lang/Java/Sorting-algorithms-Permutation-sort b/Lang/Java/Sorting-algorithms-Permutation-sort
new file mode 120000
index 0000000000..1108e6b081
--- /dev/null
+++ b/Lang/Java/Sorting-algorithms-Permutation-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Permutation-sort/Java
\ No newline at end of file
diff --git a/Lang/Java/Sorting-algorithms-Radix-sort b/Lang/Java/Sorting-algorithms-Radix-sort
new file mode 120000
index 0000000000..cd6c32b2c5
--- /dev/null
+++ b/Lang/Java/Sorting-algorithms-Radix-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Radix-sort/Java
\ No newline at end of file
diff --git a/Lang/JavaScript/Semordnilap b/Lang/JavaScript/Semordnilap
new file mode 120000
index 0000000000..813920f716
--- /dev/null
+++ b/Lang/JavaScript/Semordnilap
@@ -0,0 +1 @@
+../../Task/Semordnilap/JavaScript
\ No newline at end of file
diff --git a/Lang/Julia/00DESCRIPTION b/Lang/Julia/00DESCRIPTION
index 06f7875a8f..359ef23da9 100644
--- a/Lang/Julia/00DESCRIPTION
+++ b/Lang/Julia/00DESCRIPTION
@@ -1,4 +1,7 @@
{{stub}}
{{language | Julia | site=http://julialang.org/ }}
-Julia is a high-level, high-performance dynamic programming language for technical computing, with syntax silimar to [[MATLAB]]'s. It provides a sophisticated compiler, distributed parallel execution, numerical accuracy, and an extensive mathematical function library.
\ No newline at end of file
+Julia is a high-level, high-performance dynamic programming language for technical computing, with syntax silimar to [[MATLAB]]'s.
+It provides a sophisticated compiler, distributed parallel execution, numerical accuracy, and an extensive mathematical function library.
+It is a functional language that uses multiple dispatch as it's primary paradigm.
+It has first-class types and homoiconic macros.
\ No newline at end of file
diff --git a/Lang/Julia/24-game b/Lang/Julia/24-game
new file mode 120000
index 0000000000..19241d73b3
--- /dev/null
+++ b/Lang/Julia/24-game
@@ -0,0 +1 @@
+../../Task/24-game/Julia
\ No newline at end of file
diff --git a/Lang/Julia/24-game-Solve b/Lang/Julia/24-game-Solve
new file mode 120000
index 0000000000..adc0993d28
--- /dev/null
+++ b/Lang/Julia/24-game-Solve
@@ -0,0 +1 @@
+../../Task/24-game-Solve/Julia
\ No newline at end of file
diff --git a/Lang/Julia/GUI-component-interaction b/Lang/Julia/GUI-component-interaction
new file mode 120000
index 0000000000..87c5ad5ef7
--- /dev/null
+++ b/Lang/Julia/GUI-component-interaction
@@ -0,0 +1 @@
+../../Task/GUI-component-interaction/Julia
\ No newline at end of file
diff --git a/Lang/Julia/GUI-enabling-disabling-of-controls b/Lang/Julia/GUI-enabling-disabling-of-controls
new file mode 120000
index 0000000000..9b8e8d6499
--- /dev/null
+++ b/Lang/Julia/GUI-enabling-disabling-of-controls
@@ -0,0 +1 @@
+../../Task/GUI-enabling-disabling-of-controls/Julia
\ No newline at end of file
diff --git a/Lang/Julia/Greatest-common-divisor b/Lang/Julia/Greatest-common-divisor
new file mode 120000
index 0000000000..d949d0c7d9
--- /dev/null
+++ b/Lang/Julia/Greatest-common-divisor
@@ -0,0 +1 @@
+../../Task/Greatest-common-divisor/Julia
\ No newline at end of file
diff --git a/Lang/Julia/Higher-order-functions b/Lang/Julia/Higher-order-functions
new file mode 120000
index 0000000000..11e0bf2d24
--- /dev/null
+++ b/Lang/Julia/Higher-order-functions
@@ -0,0 +1 @@
+../../Task/Higher-order-functions/Julia
\ No newline at end of file
diff --git a/Lang/Julia/Identity-matrix b/Lang/Julia/Identity-matrix
new file mode 120000
index 0000000000..9b7bc296a2
--- /dev/null
+++ b/Lang/Julia/Identity-matrix
@@ -0,0 +1 @@
+../../Task/Identity-matrix/Julia
\ No newline at end of file
diff --git a/Lang/Julia/Infinity b/Lang/Julia/Infinity
new file mode 120000
index 0000000000..48f77b8ea8
--- /dev/null
+++ b/Lang/Julia/Infinity
@@ -0,0 +1 @@
+../../Task/Infinity/Julia
\ No newline at end of file
diff --git a/Lang/Julia/Quine b/Lang/Julia/Quine
new file mode 120000
index 0000000000..02455dc44c
--- /dev/null
+++ b/Lang/Julia/Quine
@@ -0,0 +1 @@
+../../Task/Quine/Julia
\ No newline at end of file
diff --git a/Lang/Julia/Sleep b/Lang/Julia/Sleep
new file mode 120000
index 0000000000..b59b577f79
--- /dev/null
+++ b/Lang/Julia/Sleep
@@ -0,0 +1 @@
+../../Task/Sleep/Julia
\ No newline at end of file
diff --git a/Lang/Julia/Sockets b/Lang/Julia/Sockets
new file mode 120000
index 0000000000..4f802f593c
--- /dev/null
+++ b/Lang/Julia/Sockets
@@ -0,0 +1 @@
+../../Task/Sockets/Julia
\ No newline at end of file
diff --git a/Lang/LOLCODE/Hello-world-Text b/Lang/LOLCODE/Hello-world-Text
new file mode 120000
index 0000000000..c0b8843401
--- /dev/null
+++ b/Lang/LOLCODE/Hello-world-Text
@@ -0,0 +1 @@
+../../Task/Hello-world-Text/LOLCODE
\ No newline at end of file
diff --git a/Lang/Lang5/Mandelbrot-set b/Lang/Lang5/Mandelbrot-set
new file mode 120000
index 0000000000..3979abc833
--- /dev/null
+++ b/Lang/Lang5/Mandelbrot-set
@@ -0,0 +1 @@
+../../Task/Mandelbrot-set/Lang5
\ No newline at end of file
diff --git a/Lang/Liberty-BASIC/Miller-Rabin-primality-test b/Lang/Liberty-BASIC/Miller-Rabin-primality-test
new file mode 120000
index 0000000000..01eccc1a73
--- /dev/null
+++ b/Lang/Liberty-BASIC/Miller-Rabin-primality-test
@@ -0,0 +1 @@
+../../Task/Miller-Rabin-primality-test/Liberty-BASIC
\ No newline at end of file
diff --git a/Lang/Logo/Arithmetic-geometric-mean b/Lang/Logo/Arithmetic-geometric-mean
new file mode 120000
index 0000000000..5441d08f83
--- /dev/null
+++ b/Lang/Logo/Arithmetic-geometric-mean
@@ -0,0 +1 @@
+../../Task/Arithmetic-geometric-mean/Logo
\ No newline at end of file
diff --git a/Lang/Logo/Equilibrium-index b/Lang/Logo/Equilibrium-index
new file mode 120000
index 0000000000..3c76c0dec7
--- /dev/null
+++ b/Lang/Logo/Equilibrium-index
@@ -0,0 +1 @@
+../../Task/Equilibrium-index/Logo
\ No newline at end of file
diff --git a/Lang/Logo/Substring-Top-and-tail b/Lang/Logo/Substring-Top-and-tail
new file mode 120000
index 0000000000..d6a8150554
--- /dev/null
+++ b/Lang/Logo/Substring-Top-and-tail
@@ -0,0 +1 @@
+../../Task/Substring-Top-and-tail/Logo
\ No newline at end of file
diff --git a/Lang/Lua/00DESCRIPTION b/Lang/Lua/00DESCRIPTION
index 9dac59a30b..8b27c1bfda 100644
--- a/Lang/Lua/00DESCRIPTION
+++ b/Lang/Lua/00DESCRIPTION
@@ -1,5 +1,5 @@
{{language|Lua
-|exec=JIT
+|exec=interpreted
|strength=strong
|safety=safe
|express=implicit
diff --git a/Lang/Lua/Call-a-function b/Lang/Lua/Call-a-function
new file mode 120000
index 0000000000..35d747fc66
--- /dev/null
+++ b/Lang/Lua/Call-a-function
@@ -0,0 +1 @@
+../../Task/Call-a-function/Lua
\ No newline at end of file
diff --git a/Lang/Lua/Call-an-object-method b/Lang/Lua/Call-an-object-method
new file mode 120000
index 0000000000..9870882892
--- /dev/null
+++ b/Lang/Lua/Call-an-object-method
@@ -0,0 +1 @@
+../../Task/Call-an-object-method/Lua
\ No newline at end of file
diff --git a/Lang/Lua/First-class-environments b/Lang/Lua/First-class-environments
new file mode 120000
index 0000000000..ba03e3a409
--- /dev/null
+++ b/Lang/Lua/First-class-environments
@@ -0,0 +1 @@
+../../Task/First-class-environments/Lua
\ No newline at end of file
diff --git a/Lang/Lua/Jump-anywhere b/Lang/Lua/Jump-anywhere
new file mode 120000
index 0000000000..78c16fb3cc
--- /dev/null
+++ b/Lang/Lua/Jump-anywhere
@@ -0,0 +1 @@
+../../Task/Jump-anywhere/Lua
\ No newline at end of file
diff --git a/Lang/Lua/Send-an-unknown-method-call b/Lang/Lua/Send-an-unknown-method-call
new file mode 120000
index 0000000000..e50da97eb4
--- /dev/null
+++ b/Lang/Lua/Send-an-unknown-method-call
@@ -0,0 +1 @@
+../../Task/Send-an-unknown-method-call/Lua
\ No newline at end of file
diff --git a/Lang/Lua/String-comparison b/Lang/Lua/String-comparison
new file mode 120000
index 0000000000..73fdb010db
--- /dev/null
+++ b/Lang/Lua/String-comparison
@@ -0,0 +1 @@
+../../Task/String-comparison/Lua
\ No newline at end of file
diff --git a/Lang/Mathematica/Harshad-or-Niven-series b/Lang/Mathematica/Harshad-or-Niven-series
new file mode 120000
index 0000000000..4adeb4aba7
--- /dev/null
+++ b/Lang/Mathematica/Harshad-or-Niven-series
@@ -0,0 +1 @@
+../../Task/Harshad-or-Niven-series/Mathematica
\ No newline at end of file
diff --git a/Lang/Mercury/Read-entire-file b/Lang/Mercury/Read-entire-file
new file mode 120000
index 0000000000..8db58b31cb
--- /dev/null
+++ b/Lang/Mercury/Read-entire-file
@@ -0,0 +1 @@
+../../Task/Read-entire-file/Mercury
\ No newline at end of file
diff --git a/Lang/Modula-2/Hello-world-Web-server b/Lang/Modula-2/Hello-world-Web-server
new file mode 120000
index 0000000000..55ca528bf1
--- /dev/null
+++ b/Lang/Modula-2/Hello-world-Web-server
@@ -0,0 +1 @@
+../../Task/Hello-world-Web-server/Modula-2
\ No newline at end of file
diff --git a/Lang/NetRexx/Averages-Mean-angle b/Lang/NetRexx/Averages-Mean-angle
new file mode 120000
index 0000000000..f7e42007b7
--- /dev/null
+++ b/Lang/NetRexx/Averages-Mean-angle
@@ -0,0 +1 @@
+../../Task/Averages-Mean-angle/NetRexx
\ No newline at end of file
diff --git a/Lang/NetRexx/Entropy b/Lang/NetRexx/Entropy
new file mode 120000
index 0000000000..eb375685d8
--- /dev/null
+++ b/Lang/NetRexx/Entropy
@@ -0,0 +1 @@
+../../Task/Entropy/NetRexx
\ No newline at end of file
diff --git a/Lang/NetRexx/Executable-library b/Lang/NetRexx/Executable-library
new file mode 120000
index 0000000000..ad22b47ba3
--- /dev/null
+++ b/Lang/NetRexx/Executable-library
@@ -0,0 +1 @@
+../../Task/Executable-library/NetRexx
\ No newline at end of file
diff --git a/Lang/NetRexx/Extreme-floating-point-values b/Lang/NetRexx/Extreme-floating-point-values
new file mode 120000
index 0000000000..5e7b38a87e
--- /dev/null
+++ b/Lang/NetRexx/Extreme-floating-point-values
@@ -0,0 +1 @@
+../../Task/Extreme-floating-point-values/NetRexx
\ No newline at end of file
diff --git a/Lang/NetRexx/Factors-of-an-integer b/Lang/NetRexx/Factors-of-an-integer
new file mode 120000
index 0000000000..498fb672e7
--- /dev/null
+++ b/Lang/NetRexx/Factors-of-an-integer
@@ -0,0 +1 @@
+../../Task/Factors-of-an-integer/NetRexx
\ No newline at end of file
diff --git a/Lang/NetRexx/File-modification-time b/Lang/NetRexx/File-modification-time
new file mode 120000
index 0000000000..46aa968b0c
--- /dev/null
+++ b/Lang/NetRexx/File-modification-time
@@ -0,0 +1 @@
+../../Task/File-modification-time/NetRexx
\ No newline at end of file
diff --git a/Lang/NetRexx/Letter-frequency b/Lang/NetRexx/Letter-frequency
new file mode 120000
index 0000000000..a7ade91e19
--- /dev/null
+++ b/Lang/NetRexx/Letter-frequency
@@ -0,0 +1 @@
+../../Task/Letter-frequency/NetRexx
\ No newline at end of file
diff --git a/Lang/NetRexx/Permutations b/Lang/NetRexx/Permutations
new file mode 120000
index 0000000000..9c7777605a
--- /dev/null
+++ b/Lang/NetRexx/Permutations
@@ -0,0 +1 @@
+../../Task/Permutations/NetRexx
\ No newline at end of file
diff --git a/Lang/NetRexx/Sorting-algorithms-Pancake-sort b/Lang/NetRexx/Sorting-algorithms-Pancake-sort
new file mode 120000
index 0000000000..ed2c29898f
--- /dev/null
+++ b/Lang/NetRexx/Sorting-algorithms-Pancake-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Pancake-sort/NetRexx
\ No newline at end of file
diff --git a/Lang/NetRexx/Sorting-algorithms-Permutation-sort b/Lang/NetRexx/Sorting-algorithms-Permutation-sort
new file mode 120000
index 0000000000..4a731beb74
--- /dev/null
+++ b/Lang/NetRexx/Sorting-algorithms-Permutation-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Permutation-sort/NetRexx
\ No newline at end of file
diff --git a/Lang/NetRexx/Sorting-algorithms-Radix-sort b/Lang/NetRexx/Sorting-algorithms-Radix-sort
new file mode 120000
index 0000000000..d24b9b7757
--- /dev/null
+++ b/Lang/NetRexx/Sorting-algorithms-Radix-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Radix-sort/NetRexx
\ No newline at end of file
diff --git a/Lang/NetRexx/Sum-of-squares b/Lang/NetRexx/Sum-of-squares
new file mode 120000
index 0000000000..9d5124c7b4
--- /dev/null
+++ b/Lang/NetRexx/Sum-of-squares
@@ -0,0 +1 @@
+../../Task/Sum-of-squares/NetRexx
\ No newline at end of file
diff --git a/Lang/Objeck/00DESCRIPTION b/Lang/Objeck/00DESCRIPTION
index 109c10a8b7..1669baa9f6 100644
--- a/Lang/Objeck/00DESCRIPTION
+++ b/Lang/Objeck/00DESCRIPTION
@@ -9,6 +9,8 @@
|LCT=yes}}
{{language programming paradigm|Object-oriented}}{{language programming paradigm|functional}}
-The '''Objeck Programming Language''' is an [[object-oriented]] computing language with [[functional programming|functional]] features. The language has ties with [[C sharp|C#]], [[Scheme]] and indirectly [[Ruby]]. In this language all data types, except for higher-order functions, are treated as objects. The language contains all of the basic features of a general-purpose (Turing complete) programming language with an emphasis placed on OOP simplicity. The programming environment consists of an optimizing compiler, virtual machine with associated [[Garbage collection|garbage collector]] and [[JIT]] compiler along with a command-line debugger. The compiler emits binary [[bytecode]] that is executed by the runtime system. The runtime system has the ability to translate the bytecode into AMD64 or IA-32 machine code on the fly.
+The '''Objeck Programming Language''' is an [[object-oriented]] computing language with [[functional programming|functional]] features. The language has ties with [[C sharp|C#]], [[Scheme]] and indirectly [[Ruby]]. In this language all data types, except for higher-order functions, are treated as objects. The language contains all of the basic features of a general-purpose (Turing complete) programming language with an emphasis placed on OOP simplicity.
-For more information check out the [http://objeck-lang.sourceforge.net/guide Objeck Programmer's Guide] ([https://sourceforge.net/p/objeck-lang/code/3289/tree/main/docs/guide/objeck_lang.pdf?format=raw pdf]) or this YouTube [http://www.youtube.com/watch?v=Mk2Kfb-WESU video]. The language can be [http://sourceforge.net/projects/objeck-lang/files/ obtained] from the main project homepage. Also, check out the IRC channel #objeck on freenode.net.
\ No newline at end of file
+The programming environment consists of an optimizing compiler, virtual machine with associated [[Garbage collection|garbage collector]] and [[JIT]] compiler along with a command-line debugger. The compiler emits binary [[bytecode]] that is executed by the runtime system. The runtime system has the ability to translate the bytecode into AMD64 or IA-32 machine code on the fly.
+
+For more information check out the [http://objeck-lang.sourceforge.net/guide Objeck Programmer's Guide] ([http://sourceforge.net/p/objeck-lang/code/HEAD/tree/main/docs/guide/objeck_lang.pdf?format=raw pdf]) or this YouTube [http://www.youtube.com/watch?v=Mk2Kfb-WESU video]. The language can be [http://sourceforge.net/projects/objeck-lang/files/ obtained] from the main project homepage. Also, check out the IRC channel #objeck on freenode.net.
\ No newline at end of file
diff --git a/Lang/Objeck/Arithmetic-geometric-mean b/Lang/Objeck/Arithmetic-geometric-mean
new file mode 120000
index 0000000000..5d93b9a5d8
--- /dev/null
+++ b/Lang/Objeck/Arithmetic-geometric-mean
@@ -0,0 +1 @@
+../../Task/Arithmetic-geometric-mean/Objeck
\ No newline at end of file
diff --git a/Lang/Objeck/Averages-Mode b/Lang/Objeck/Averages-Mode
new file mode 120000
index 0000000000..58b64930dc
--- /dev/null
+++ b/Lang/Objeck/Averages-Mode
@@ -0,0 +1 @@
+../../Task/Averages-Mode/Objeck
\ No newline at end of file
diff --git a/Lang/Objeck/Averages-Simple-moving-average b/Lang/Objeck/Averages-Simple-moving-average
new file mode 120000
index 0000000000..60f88fdf2b
--- /dev/null
+++ b/Lang/Objeck/Averages-Simple-moving-average
@@ -0,0 +1 @@
+../../Task/Averages-Simple-moving-average/Objeck
\ No newline at end of file
diff --git a/Lang/Objeck/Caesar-cipher b/Lang/Objeck/Caesar-cipher
new file mode 120000
index 0000000000..69c8202bbe
--- /dev/null
+++ b/Lang/Objeck/Caesar-cipher
@@ -0,0 +1 @@
+../../Task/Caesar-cipher/Objeck
\ No newline at end of file
diff --git a/Lang/Objeck/Count-in-factors b/Lang/Objeck/Count-in-factors
new file mode 120000
index 0000000000..2686949d31
--- /dev/null
+++ b/Lang/Objeck/Count-in-factors
@@ -0,0 +1 @@
+../../Task/Count-in-factors/Objeck
\ No newline at end of file
diff --git a/Lang/Objeck/Harshad-or-Niven-series b/Lang/Objeck/Harshad-or-Niven-series
new file mode 120000
index 0000000000..97d553ce8b
--- /dev/null
+++ b/Lang/Objeck/Harshad-or-Niven-series
@@ -0,0 +1 @@
+../../Task/Harshad-or-Niven-series/Objeck
\ No newline at end of file
diff --git a/Lang/Objeck/I-before-E-except-after-C b/Lang/Objeck/I-before-E-except-after-C
new file mode 120000
index 0000000000..8395b957bc
--- /dev/null
+++ b/Lang/Objeck/I-before-E-except-after-C
@@ -0,0 +1 @@
+../../Task/I-before-E-except-after-C/Objeck
\ No newline at end of file
diff --git a/Lang/Objeck/Identity-matrix b/Lang/Objeck/Identity-matrix
new file mode 120000
index 0000000000..200ec581df
--- /dev/null
+++ b/Lang/Objeck/Identity-matrix
@@ -0,0 +1 @@
+../../Task/Identity-matrix/Objeck
\ No newline at end of file
diff --git a/Lang/Objeck/Josephus-problem b/Lang/Objeck/Josephus-problem
new file mode 120000
index 0000000000..e00fb85196
--- /dev/null
+++ b/Lang/Objeck/Josephus-problem
@@ -0,0 +1 @@
+../../Task/Josephus-problem/Objeck
\ No newline at end of file
diff --git a/Lang/Objeck/Man-or-boy-test b/Lang/Objeck/Man-or-boy-test
new file mode 120000
index 0000000000..ac5072f8ac
--- /dev/null
+++ b/Lang/Objeck/Man-or-boy-test
@@ -0,0 +1 @@
+../../Task/Man-or-boy-test/Objeck
\ No newline at end of file
diff --git a/Lang/Objeck/Pig-the-dice-game b/Lang/Objeck/Pig-the-dice-game
new file mode 120000
index 0000000000..ded5d421c4
--- /dev/null
+++ b/Lang/Objeck/Pig-the-dice-game
@@ -0,0 +1 @@
+../../Task/Pig-the-dice-game/Objeck
\ No newline at end of file
diff --git a/Lang/Objeck/Range-extraction b/Lang/Objeck/Range-extraction
new file mode 120000
index 0000000000..47556fccbc
--- /dev/null
+++ b/Lang/Objeck/Range-extraction
@@ -0,0 +1 @@
+../../Task/Range-extraction/Objeck
\ No newline at end of file
diff --git a/Lang/Objective-C/Haversine-formula b/Lang/Objective-C/Haversine-formula
new file mode 120000
index 0000000000..4090351b17
--- /dev/null
+++ b/Lang/Objective-C/Haversine-formula
@@ -0,0 +1 @@
+../../Task/Haversine-formula/Objective-C
\ No newline at end of file
diff --git a/Lang/Octave/Find-the-missing-permutation b/Lang/Octave/Find-the-missing-permutation
new file mode 120000
index 0000000000..4c9aa7ad45
--- /dev/null
+++ b/Lang/Octave/Find-the-missing-permutation
@@ -0,0 +1 @@
+../../Task/Find-the-missing-permutation/Octave
\ No newline at end of file
diff --git a/Lang/Order/Higher-order-functions b/Lang/Order/Higher-order-functions
new file mode 120000
index 0000000000..89f0e0d376
--- /dev/null
+++ b/Lang/Order/Higher-order-functions
@@ -0,0 +1 @@
+../../Task/Higher-order-functions/Order
\ No newline at end of file
diff --git a/Lang/PARI-GP/Entropy b/Lang/PARI-GP/Entropy
new file mode 120000
index 0000000000..fe636fc38f
--- /dev/null
+++ b/Lang/PARI-GP/Entropy
@@ -0,0 +1 @@
+../../Task/Entropy/PARI-GP
\ No newline at end of file
diff --git a/Lang/PARI-GP/Harshad-or-Niven-series b/Lang/PARI-GP/Harshad-or-Niven-series
new file mode 120000
index 0000000000..ea4889a071
--- /dev/null
+++ b/Lang/PARI-GP/Harshad-or-Niven-series
@@ -0,0 +1 @@
+../../Task/Harshad-or-Niven-series/PARI-GP
\ No newline at end of file
diff --git a/Lang/PARI-GP/Largest-int-from-concatenated-ints b/Lang/PARI-GP/Largest-int-from-concatenated-ints
new file mode 120000
index 0000000000..82a40a194a
--- /dev/null
+++ b/Lang/PARI-GP/Largest-int-from-concatenated-ints
@@ -0,0 +1 @@
+../../Task/Largest-int-from-concatenated-ints/PARI-GP
\ No newline at end of file
diff --git a/Lang/PARI-GP/Middle-three-digits b/Lang/PARI-GP/Middle-three-digits
new file mode 120000
index 0000000000..8680ce9e13
--- /dev/null
+++ b/Lang/PARI-GP/Middle-three-digits
@@ -0,0 +1 @@
+../../Task/Middle-three-digits/PARI-GP
\ No newline at end of file
diff --git a/Lang/PHP/Character-matching b/Lang/PHP/Character-matching
new file mode 120000
index 0000000000..8298cc63af
--- /dev/null
+++ b/Lang/PHP/Character-matching
@@ -0,0 +1 @@
+../../Task/Character-matching/PHP
\ No newline at end of file
diff --git a/Lang/PL-I/Case-sensitivity-of-identifiers b/Lang/PL-I/Case-sensitivity-of-identifiers
new file mode 120000
index 0000000000..c902d4f2cf
--- /dev/null
+++ b/Lang/PL-I/Case-sensitivity-of-identifiers
@@ -0,0 +1 @@
+../../Task/Case-sensitivity-of-identifiers/PL-I
\ No newline at end of file
diff --git a/Lang/PL-SQL/100-doors b/Lang/PL-SQL/100-doors
new file mode 120000
index 0000000000..ca6bc91c09
--- /dev/null
+++ b/Lang/PL-SQL/100-doors
@@ -0,0 +1 @@
+../../Task/100-doors/PL-SQL
\ No newline at end of file
diff --git a/Lang/Perl-6/Brownian-tree b/Lang/Perl-6/Brownian-tree
new file mode 120000
index 0000000000..70d2a9c2ad
--- /dev/null
+++ b/Lang/Perl-6/Brownian-tree
@@ -0,0 +1 @@
+../../Task/Brownian-tree/Perl-6
\ No newline at end of file
diff --git a/Lang/Perl-6/Colour-bars-Display b/Lang/Perl-6/Colour-bars-Display
new file mode 120000
index 0000000000..4908736932
--- /dev/null
+++ b/Lang/Perl-6/Colour-bars-Display
@@ -0,0 +1 @@
+../../Task/Colour-bars-Display/Perl-6
\ No newline at end of file
diff --git a/Lang/Perl-6/Colour-pinstripe-Display b/Lang/Perl-6/Colour-pinstripe-Display
new file mode 120000
index 0000000000..1b88cba8d5
--- /dev/null
+++ b/Lang/Perl-6/Colour-pinstripe-Display
@@ -0,0 +1 @@
+../../Task/Colour-pinstripe-Display/Perl-6
\ No newline at end of file
diff --git a/Lang/Perl-6/Create-a-file-on-magnetic-tape b/Lang/Perl-6/Create-a-file-on-magnetic-tape
new file mode 120000
index 0000000000..64f79e5d0b
--- /dev/null
+++ b/Lang/Perl-6/Create-a-file-on-magnetic-tape
@@ -0,0 +1 @@
+../../Task/Create-a-file-on-magnetic-tape/Perl-6
\ No newline at end of file
diff --git a/Lang/Perl-6/Date-manipulation b/Lang/Perl-6/Date-manipulation
new file mode 120000
index 0000000000..7409dba028
--- /dev/null
+++ b/Lang/Perl-6/Date-manipulation
@@ -0,0 +1 @@
+../../Task/Date-manipulation/Perl-6
\ No newline at end of file
diff --git a/Lang/Perl-6/Determine-if-only-one-instance-is-running b/Lang/Perl-6/Determine-if-only-one-instance-is-running
new file mode 120000
index 0000000000..3247a854e6
--- /dev/null
+++ b/Lang/Perl-6/Determine-if-only-one-instance-is-running
@@ -0,0 +1 @@
+../../Task/Determine-if-only-one-instance-is-running/Perl-6
\ No newline at end of file
diff --git a/Lang/Perl-6/First-class-environments b/Lang/Perl-6/First-class-environments
new file mode 120000
index 0000000000..21919c12d1
--- /dev/null
+++ b/Lang/Perl-6/First-class-environments
@@ -0,0 +1 @@
+../../Task/First-class-environments/Perl-6
\ No newline at end of file
diff --git a/Lang/Perl-6/Galton-box-animation b/Lang/Perl-6/Galton-box-animation
new file mode 120000
index 0000000000..e93ff7cb7a
--- /dev/null
+++ b/Lang/Perl-6/Galton-box-animation
@@ -0,0 +1 @@
+../../Task/Galton-box-animation/Perl-6
\ No newline at end of file
diff --git a/Lang/Perl-6/Keyboard-macros b/Lang/Perl-6/Keyboard-macros
new file mode 120000
index 0000000000..1b18106ed3
--- /dev/null
+++ b/Lang/Perl-6/Keyboard-macros
@@ -0,0 +1 @@
+../../Task/Keyboard-macros/Perl-6
\ No newline at end of file
diff --git a/Lang/Perl-6/MD4 b/Lang/Perl-6/MD4
new file mode 120000
index 0000000000..e34ece4ead
--- /dev/null
+++ b/Lang/Perl-6/MD4
@@ -0,0 +1 @@
+../../Task/MD4/Perl-6
\ No newline at end of file
diff --git a/Lang/Perl-6/Matrix-arithmetic b/Lang/Perl-6/Matrix-arithmetic
new file mode 120000
index 0000000000..1d371b7c95
--- /dev/null
+++ b/Lang/Perl-6/Matrix-arithmetic
@@ -0,0 +1 @@
+../../Task/Matrix-arithmetic/Perl-6
\ No newline at end of file
diff --git a/Lang/Perl-6/Multiplicative-order b/Lang/Perl-6/Multiplicative-order
new file mode 120000
index 0000000000..072280209d
--- /dev/null
+++ b/Lang/Perl-6/Multiplicative-order
@@ -0,0 +1 @@
+../../Task/Multiplicative-order/Perl-6
\ No newline at end of file
diff --git a/Lang/Perl-6/Permutation-test b/Lang/Perl-6/Permutation-test
new file mode 120000
index 0000000000..c329f21270
--- /dev/null
+++ b/Lang/Perl-6/Permutation-test
@@ -0,0 +1 @@
+../../Task/Permutation-test/Perl-6
\ No newline at end of file
diff --git a/Lang/Perl-6/Pig-the-dice-game-Player b/Lang/Perl-6/Pig-the-dice-game-Player
new file mode 120000
index 0000000000..a38f3680b3
--- /dev/null
+++ b/Lang/Perl-6/Pig-the-dice-game-Player
@@ -0,0 +1 @@
+../../Task/Pig-the-dice-game-Player/Perl-6
\ No newline at end of file
diff --git a/Lang/Perl-6/Pinstripe-Display b/Lang/Perl-6/Pinstripe-Display
new file mode 120000
index 0000000000..406aa294f5
--- /dev/null
+++ b/Lang/Perl-6/Pinstripe-Display
@@ -0,0 +1 @@
+../../Task/Pinstripe-Display/Perl-6
\ No newline at end of file
diff --git a/Lang/Perl-6/Rosetta-Code-Find-unimplemented-tasks b/Lang/Perl-6/Rosetta-Code-Find-unimplemented-tasks
new file mode 120000
index 0000000000..fe10280bde
--- /dev/null
+++ b/Lang/Perl-6/Rosetta-Code-Find-unimplemented-tasks
@@ -0,0 +1 @@
+../../Task/Rosetta-Code-Find-unimplemented-tasks/Perl-6
\ No newline at end of file
diff --git a/Lang/Perl-6/Rosetta-Code-Fix-code-tags b/Lang/Perl-6/Rosetta-Code-Fix-code-tags
new file mode 120000
index 0000000000..7386f1eb5e
--- /dev/null
+++ b/Lang/Perl-6/Rosetta-Code-Fix-code-tags
@@ -0,0 +1 @@
+../../Task/Rosetta-Code-Fix-code-tags/Perl-6
\ No newline at end of file
diff --git a/Lang/Perl-6/Terminal-control-Coloured-text b/Lang/Perl-6/Terminal-control-Coloured-text
new file mode 120000
index 0000000000..bba0b8f7fe
--- /dev/null
+++ b/Lang/Perl-6/Terminal-control-Coloured-text
@@ -0,0 +1 @@
+../../Task/Terminal-control-Coloured-text/Perl-6
\ No newline at end of file
diff --git a/Lang/Perl-6/Terminal-control-Cursor-movement b/Lang/Perl-6/Terminal-control-Cursor-movement
new file mode 120000
index 0000000000..b99f862f0f
--- /dev/null
+++ b/Lang/Perl-6/Terminal-control-Cursor-movement
@@ -0,0 +1 @@
+../../Task/Terminal-control-Cursor-movement/Perl-6
\ No newline at end of file
diff --git a/Lang/Perl-6/Terminal-control-Preserve-screen b/Lang/Perl-6/Terminal-control-Preserve-screen
new file mode 120000
index 0000000000..d4e580bfc4
--- /dev/null
+++ b/Lang/Perl-6/Terminal-control-Preserve-screen
@@ -0,0 +1 @@
+../../Task/Terminal-control-Preserve-screen/Perl-6
\ No newline at end of file
diff --git a/Lang/Perl/MD4 b/Lang/Perl/MD4
new file mode 120000
index 0000000000..8e29a87a10
--- /dev/null
+++ b/Lang/Perl/MD4
@@ -0,0 +1 @@
+../../Task/MD4/Perl
\ No newline at end of file
diff --git a/Lang/Perl/Temperature-conversion b/Lang/Perl/Temperature-conversion
new file mode 120000
index 0000000000..0331f81a34
--- /dev/null
+++ b/Lang/Perl/Temperature-conversion
@@ -0,0 +1 @@
+../../Task/Temperature-conversion/Perl
\ No newline at end of file
diff --git a/Lang/PowerBASIC/Include-a-file b/Lang/PowerBASIC/Include-a-file
new file mode 120000
index 0000000000..712c59ffe8
--- /dev/null
+++ b/Lang/PowerBASIC/Include-a-file
@@ -0,0 +1 @@
+../../Task/Include-a-file/PowerBASIC
\ No newline at end of file
diff --git a/Lang/Prolog/Binary-digits b/Lang/Prolog/Binary-digits
new file mode 120000
index 0000000000..835eaec348
--- /dev/null
+++ b/Lang/Prolog/Binary-digits
@@ -0,0 +1 @@
+../../Task/Binary-digits/Prolog
\ No newline at end of file
diff --git a/Lang/Prolog/Evolutionary-algorithm b/Lang/Prolog/Evolutionary-algorithm
new file mode 120000
index 0000000000..b2a20f069a
--- /dev/null
+++ b/Lang/Prolog/Evolutionary-algorithm
@@ -0,0 +1 @@
+../../Task/Evolutionary-algorithm/Prolog
\ No newline at end of file
diff --git a/Lang/Prolog/Fast-Fourier-transform b/Lang/Prolog/Fast-Fourier-transform
new file mode 120000
index 0000000000..84e0272d05
--- /dev/null
+++ b/Lang/Prolog/Fast-Fourier-transform
@@ -0,0 +1 @@
+../../Task/Fast-Fourier-transform/Prolog
\ No newline at end of file
diff --git a/Lang/Prolog/Hello-world-Web-server b/Lang/Prolog/Hello-world-Web-server
new file mode 120000
index 0000000000..73a7bb9937
--- /dev/null
+++ b/Lang/Prolog/Hello-world-Web-server
@@ -0,0 +1 @@
+../../Task/Hello-world-Web-server/Prolog
\ No newline at end of file
diff --git a/Lang/Prolog/Langtons-ant b/Lang/Prolog/Langtons-ant
new file mode 120000
index 0000000000..730665471e
--- /dev/null
+++ b/Lang/Prolog/Langtons-ant
@@ -0,0 +1 @@
+../../Task/Langtons-ant/Prolog
\ No newline at end of file
diff --git a/Lang/Prolog/Quaternion-type b/Lang/Prolog/Quaternion-type
new file mode 120000
index 0000000000..458f5f70bc
--- /dev/null
+++ b/Lang/Prolog/Quaternion-type
@@ -0,0 +1 @@
+../../Task/Quaternion-type/Prolog
\ No newline at end of file
diff --git a/Lang/Prolog/Sorting-algorithms-Bubble-sort b/Lang/Prolog/Sorting-algorithms-Bubble-sort
new file mode 120000
index 0000000000..731359775e
--- /dev/null
+++ b/Lang/Prolog/Sorting-algorithms-Bubble-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Bubble-sort/Prolog
\ No newline at end of file
diff --git a/Lang/Prolog/Sorting-algorithms-Cocktail-sort b/Lang/Prolog/Sorting-algorithms-Cocktail-sort
new file mode 120000
index 0000000000..29a16d5a01
--- /dev/null
+++ b/Lang/Prolog/Sorting-algorithms-Cocktail-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Cocktail-sort/Prolog
\ No newline at end of file
diff --git a/Lang/Protium/Loops-N-plus-one-half b/Lang/Protium/Loops-N-plus-one-half
new file mode 120000
index 0000000000..ccf5e85e7c
--- /dev/null
+++ b/Lang/Protium/Loops-N-plus-one-half
@@ -0,0 +1 @@
+../../Task/Loops-N-plus-one-half/Protium
\ No newline at end of file
diff --git a/Lang/PureBasic/Middle-three-digits b/Lang/PureBasic/Middle-three-digits
new file mode 120000
index 0000000000..0bed3b1b8a
--- /dev/null
+++ b/Lang/PureBasic/Middle-three-digits
@@ -0,0 +1 @@
+../../Task/Middle-three-digits/PureBasic
\ No newline at end of file
diff --git a/Lang/R/Josephus-problem b/Lang/R/Josephus-problem
new file mode 120000
index 0000000000..11e06e327a
--- /dev/null
+++ b/Lang/R/Josephus-problem
@@ -0,0 +1 @@
+../../Task/Josephus-problem/R
\ No newline at end of file
diff --git a/Lang/REALbasic/FizzBuzz b/Lang/REALbasic/FizzBuzz
new file mode 120000
index 0000000000..49ed3cf68e
--- /dev/null
+++ b/Lang/REALbasic/FizzBuzz
@@ -0,0 +1 @@
+../../Task/FizzBuzz/REALbasic
\ No newline at end of file
diff --git a/Lang/REALbasic/Hello-world-Web-server b/Lang/REALbasic/Hello-world-Web-server
new file mode 120000
index 0000000000..ef9d461637
--- /dev/null
+++ b/Lang/REALbasic/Hello-world-Web-server
@@ -0,0 +1 @@
+../../Task/Hello-world-Web-server/REALbasic
\ No newline at end of file
diff --git a/Lang/REXX/Euler-method b/Lang/REXX/Euler-method
new file mode 120000
index 0000000000..b5e28a13a3
--- /dev/null
+++ b/Lang/REXX/Euler-method
@@ -0,0 +1 @@
+../../Task/Euler-method/REXX
\ No newline at end of file
diff --git a/Lang/REXX/Exceptions b/Lang/REXX/Exceptions
new file mode 120000
index 0000000000..0703356021
--- /dev/null
+++ b/Lang/REXX/Exceptions
@@ -0,0 +1 @@
+../../Task/Exceptions/REXX
\ No newline at end of file
diff --git a/Lang/REXX/Exceptions-Catch-an-exception-thrown-in-a-nested-call b/Lang/REXX/Exceptions-Catch-an-exception-thrown-in-a-nested-call
new file mode 120000
index 0000000000..f89c4adabe
--- /dev/null
+++ b/Lang/REXX/Exceptions-Catch-an-exception-thrown-in-a-nested-call
@@ -0,0 +1 @@
+../../Task/Exceptions-Catch-an-exception-thrown-in-a-nested-call/REXX
\ No newline at end of file
diff --git a/Lang/REXX/Holidays-related-to-Easter b/Lang/REXX/Holidays-related-to-Easter
new file mode 120000
index 0000000000..fdf1fd7267
--- /dev/null
+++ b/Lang/REXX/Holidays-related-to-Easter
@@ -0,0 +1 @@
+../../Task/Holidays-related-to-Easter/REXX
\ No newline at end of file
diff --git a/Lang/REXX/Matrix-arithmetic b/Lang/REXX/Matrix-arithmetic
new file mode 120000
index 0000000000..1e4edc79ea
--- /dev/null
+++ b/Lang/REXX/Matrix-arithmetic
@@ -0,0 +1 @@
+../../Task/Matrix-arithmetic/REXX
\ No newline at end of file
diff --git a/Lang/REXX/Optional-parameters b/Lang/REXX/Optional-parameters
new file mode 120000
index 0000000000..d73eb27b34
--- /dev/null
+++ b/Lang/REXX/Optional-parameters
@@ -0,0 +1 @@
+../../Task/Optional-parameters/REXX
\ No newline at end of file
diff --git a/Lang/REXX/Order-two-numerical-lists b/Lang/REXX/Order-two-numerical-lists
new file mode 120000
index 0000000000..f8da3669ba
--- /dev/null
+++ b/Lang/REXX/Order-two-numerical-lists
@@ -0,0 +1 @@
+../../Task/Order-two-numerical-lists/REXX
\ No newline at end of file
diff --git a/Lang/REXX/Random-number-generator--included- b/Lang/REXX/Random-number-generator--included-
new file mode 120000
index 0000000000..aff0e135c5
--- /dev/null
+++ b/Lang/REXX/Random-number-generator--included-
@@ -0,0 +1 @@
+../../Task/Random-number-generator--included-/REXX
\ No newline at end of file
diff --git a/Lang/Racket/00DESCRIPTION b/Lang/Racket/00DESCRIPTION
index 611195ed12..004ff32234 100644
--- a/Lang/Racket/00DESCRIPTION
+++ b/Lang/Racket/00DESCRIPTION
@@ -1,5 +1,5 @@
{{language}}
-'''Racket''' (at one time called 'PLT Scheme') is a member of the Lisp and Scheme family of languages. The Racket language (like Clojure, for example) draws freely from the various strands of its lineage.
+'''Racket''' (renamed from "PLT Scheme" years ago) is a member of the Lisp and Scheme family of languages. Racket draws freely from the various strands of its lineage.
-* [http://racket-lang.org Home page]
+* [http://racket-lang.org/ Home page]
* [http://en.wikipedia.org/wiki/Racket_(programming_language) Wikipedia]
\ No newline at end of file
diff --git a/Lang/Racket/24-game-Solve b/Lang/Racket/24-game-Solve
new file mode 120000
index 0000000000..6094be00ff
--- /dev/null
+++ b/Lang/Racket/24-game-Solve
@@ -0,0 +1 @@
+../../Task/24-game-Solve/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Active-Directory-Connect b/Lang/Racket/Active-Directory-Connect
new file mode 120000
index 0000000000..61dbad0ec1
--- /dev/null
+++ b/Lang/Racket/Active-Directory-Connect
@@ -0,0 +1 @@
+../../Task/Active-Directory-Connect/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Anagrams-Deranged-anagrams b/Lang/Racket/Anagrams-Deranged-anagrams
new file mode 120000
index 0000000000..00ca9369af
--- /dev/null
+++ b/Lang/Racket/Anagrams-Deranged-anagrams
@@ -0,0 +1 @@
+../../Task/Anagrams-Deranged-anagrams/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Arena-storage-pool b/Lang/Racket/Arena-storage-pool
new file mode 120000
index 0000000000..eabd1b282e
--- /dev/null
+++ b/Lang/Racket/Arena-storage-pool
@@ -0,0 +1 @@
+../../Task/Arena-storage-pool/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Arithmetic-Rational b/Lang/Racket/Arithmetic-Rational
new file mode 120000
index 0000000000..36546c6653
--- /dev/null
+++ b/Lang/Racket/Arithmetic-Rational
@@ -0,0 +1 @@
+../../Task/Arithmetic-Rational/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Arithmetic-evaluation b/Lang/Racket/Arithmetic-evaluation
new file mode 120000
index 0000000000..5c1894498d
--- /dev/null
+++ b/Lang/Racket/Arithmetic-evaluation
@@ -0,0 +1 @@
+../../Task/Arithmetic-evaluation/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Average-loop-length b/Lang/Racket/Average-loop-length
new file mode 120000
index 0000000000..d63ad537e9
--- /dev/null
+++ b/Lang/Racket/Average-loop-length
@@ -0,0 +1 @@
+../../Task/Average-loop-length/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Averages-Mean-time-of-day b/Lang/Racket/Averages-Mean-time-of-day
new file mode 120000
index 0000000000..4c50d71269
--- /dev/null
+++ b/Lang/Racket/Averages-Mean-time-of-day
@@ -0,0 +1 @@
+../../Task/Averages-Mean-time-of-day/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Averages-Mode b/Lang/Racket/Averages-Mode
new file mode 120000
index 0000000000..f2cc65f0b5
--- /dev/null
+++ b/Lang/Racket/Averages-Mode
@@ -0,0 +1 @@
+../../Task/Averages-Mode/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Averages-Root-mean-square b/Lang/Racket/Averages-Root-mean-square
new file mode 120000
index 0000000000..d113a6773d
--- /dev/null
+++ b/Lang/Racket/Averages-Root-mean-square
@@ -0,0 +1 @@
+../../Task/Averages-Root-mean-square/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Averages-Simple-moving-average b/Lang/Racket/Averages-Simple-moving-average
new file mode 120000
index 0000000000..163812ac02
--- /dev/null
+++ b/Lang/Racket/Averages-Simple-moving-average
@@ -0,0 +1 @@
+../../Task/Averages-Simple-moving-average/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Bitcoin-address-validation b/Lang/Racket/Bitcoin-address-validation
new file mode 120000
index 0000000000..b9d8e8dc62
--- /dev/null
+++ b/Lang/Racket/Bitcoin-address-validation
@@ -0,0 +1 @@
+../../Task/Bitcoin-address-validation/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Bitmap-B-zier-curves-Cubic b/Lang/Racket/Bitmap-B-zier-curves-Cubic
new file mode 120000
index 0000000000..c4b0ca1add
--- /dev/null
+++ b/Lang/Racket/Bitmap-B-zier-curves-Cubic
@@ -0,0 +1 @@
+../../Task/Bitmap-B-zier-curves-Cubic/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Bitmap-B-zier-curves-Quadratic b/Lang/Racket/Bitmap-B-zier-curves-Quadratic
new file mode 120000
index 0000000000..1d54d6244e
--- /dev/null
+++ b/Lang/Racket/Bitmap-B-zier-curves-Quadratic
@@ -0,0 +1 @@
+../../Task/Bitmap-B-zier-curves-Quadratic/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Bitmap-Bresenhams-line-algorithm b/Lang/Racket/Bitmap-Bresenhams-line-algorithm
new file mode 120000
index 0000000000..9bd5a447e5
--- /dev/null
+++ b/Lang/Racket/Bitmap-Bresenhams-line-algorithm
@@ -0,0 +1 @@
+../../Task/Bitmap-Bresenhams-line-algorithm/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Bitmap-Midpoint-circle-algorithm b/Lang/Racket/Bitmap-Midpoint-circle-algorithm
new file mode 120000
index 0000000000..8fd24c5e08
--- /dev/null
+++ b/Lang/Racket/Bitmap-Midpoint-circle-algorithm
@@ -0,0 +1 @@
+../../Task/Bitmap-Midpoint-circle-algorithm/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Bitmap-Read-a-PPM-file b/Lang/Racket/Bitmap-Read-a-PPM-file
new file mode 120000
index 0000000000..f31962d339
--- /dev/null
+++ b/Lang/Racket/Bitmap-Read-a-PPM-file
@@ -0,0 +1 @@
+../../Task/Bitmap-Read-a-PPM-file/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Bulls-and-cows b/Lang/Racket/Bulls-and-cows
new file mode 120000
index 0000000000..c58766d774
--- /dev/null
+++ b/Lang/Racket/Bulls-and-cows
@@ -0,0 +1 @@
+../../Task/Bulls-and-cows/Racket
\ No newline at end of file
diff --git a/Lang/Racket/CRC-32 b/Lang/Racket/CRC-32
new file mode 120000
index 0000000000..37b6cc4eb0
--- /dev/null
+++ b/Lang/Racket/CRC-32
@@ -0,0 +1 @@
+../../Task/CRC-32/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Calendar b/Lang/Racket/Calendar
new file mode 120000
index 0000000000..d12eb86b1c
--- /dev/null
+++ b/Lang/Racket/Calendar
@@ -0,0 +1 @@
+../../Task/Calendar/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Calendar---for-real-programmers b/Lang/Racket/Calendar---for-real-programmers
new file mode 120000
index 0000000000..652953a553
--- /dev/null
+++ b/Lang/Racket/Calendar---for-real-programmers
@@ -0,0 +1 @@
+../../Task/Calendar---for-real-programmers/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Call-a-function b/Lang/Racket/Call-a-function
new file mode 120000
index 0000000000..9f6f6edc6a
--- /dev/null
+++ b/Lang/Racket/Call-a-function
@@ -0,0 +1 @@
+../../Task/Call-a-function/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Carmichael-3-strong-pseudoprimes b/Lang/Racket/Carmichael-3-strong-pseudoprimes
new file mode 120000
index 0000000000..e886df79e0
--- /dev/null
+++ b/Lang/Racket/Carmichael-3-strong-pseudoprimes
@@ -0,0 +1 @@
+../../Task/Carmichael-3-strong-pseudoprimes/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Character-codes b/Lang/Racket/Character-codes
new file mode 120000
index 0000000000..41a6554887
--- /dev/null
+++ b/Lang/Racket/Character-codes
@@ -0,0 +1 @@
+../../Task/Character-codes/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Chat-server b/Lang/Racket/Chat-server
new file mode 120000
index 0000000000..1832684f08
--- /dev/null
+++ b/Lang/Racket/Chat-server
@@ -0,0 +1 @@
+../../Task/Chat-server/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Check-Machin-like-formulas b/Lang/Racket/Check-Machin-like-formulas
new file mode 120000
index 0000000000..9407f952d2
--- /dev/null
+++ b/Lang/Racket/Check-Machin-like-formulas
@@ -0,0 +1 @@
+../../Task/Check-Machin-like-formulas/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Check-that-file-exists b/Lang/Racket/Check-that-file-exists
new file mode 120000
index 0000000000..098e2a09b9
--- /dev/null
+++ b/Lang/Racket/Check-that-file-exists
@@ -0,0 +1 @@
+../../Task/Check-that-file-exists/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Checkpoint-synchronization b/Lang/Racket/Checkpoint-synchronization
new file mode 120000
index 0000000000..017929310b
--- /dev/null
+++ b/Lang/Racket/Checkpoint-synchronization
@@ -0,0 +1 @@
+../../Task/Checkpoint-synchronization/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Cholesky-decomposition b/Lang/Racket/Cholesky-decomposition
new file mode 120000
index 0000000000..f69ba751c3
--- /dev/null
+++ b/Lang/Racket/Cholesky-decomposition
@@ -0,0 +1 @@
+../../Task/Cholesky-decomposition/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Closest-pair-problem b/Lang/Racket/Closest-pair-problem
new file mode 120000
index 0000000000..5b9a925129
--- /dev/null
+++ b/Lang/Racket/Closest-pair-problem
@@ -0,0 +1 @@
+../../Task/Closest-pair-problem/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Collections b/Lang/Racket/Collections
new file mode 120000
index 0000000000..7c7a2570bc
--- /dev/null
+++ b/Lang/Racket/Collections
@@ -0,0 +1 @@
+../../Task/Collections/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Colour-bars-Display b/Lang/Racket/Colour-bars-Display
new file mode 120000
index 0000000000..68ebccd9f1
--- /dev/null
+++ b/Lang/Racket/Colour-bars-Display
@@ -0,0 +1 @@
+../../Task/Colour-bars-Display/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Colour-pinstripe-Display b/Lang/Racket/Colour-pinstripe-Display
new file mode 120000
index 0000000000..0babbab3dc
--- /dev/null
+++ b/Lang/Racket/Colour-pinstripe-Display
@@ -0,0 +1 @@
+../../Task/Colour-pinstripe-Display/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Colour-pinstripe-Printer b/Lang/Racket/Colour-pinstripe-Printer
new file mode 120000
index 0000000000..7d211c5034
--- /dev/null
+++ b/Lang/Racket/Colour-pinstripe-Printer
@@ -0,0 +1 @@
+../../Task/Colour-pinstripe-Printer/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Combinations b/Lang/Racket/Combinations
new file mode 120000
index 0000000000..4a41f4bf18
--- /dev/null
+++ b/Lang/Racket/Combinations
@@ -0,0 +1 @@
+../../Task/Combinations/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Combinations-with-repetitions b/Lang/Racket/Combinations-with-repetitions
new file mode 120000
index 0000000000..e103111b63
--- /dev/null
+++ b/Lang/Racket/Combinations-with-repetitions
@@ -0,0 +1 @@
+../../Task/Combinations-with-repetitions/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Conditional-structures b/Lang/Racket/Conditional-structures
new file mode 120000
index 0000000000..6f5bd005c6
--- /dev/null
+++ b/Lang/Racket/Conditional-structures
@@ -0,0 +1 @@
+../../Task/Conditional-structures/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Constrained-random-points-on-a-circle b/Lang/Racket/Constrained-random-points-on-a-circle
new file mode 120000
index 0000000000..a1093600cd
--- /dev/null
+++ b/Lang/Racket/Constrained-random-points-on-a-circle
@@ -0,0 +1 @@
+../../Task/Constrained-random-points-on-a-circle/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Continued-fraction b/Lang/Racket/Continued-fraction
new file mode 120000
index 0000000000..e473568744
--- /dev/null
+++ b/Lang/Racket/Continued-fraction
@@ -0,0 +1 @@
+../../Task/Continued-fraction/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Copy-a-string b/Lang/Racket/Copy-a-string
new file mode 120000
index 0000000000..cbb3ca3689
--- /dev/null
+++ b/Lang/Racket/Copy-a-string
@@ -0,0 +1 @@
+../../Task/Copy-a-string/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Count-occurrences-of-a-substring b/Lang/Racket/Count-occurrences-of-a-substring
new file mode 120000
index 0000000000..af80d049e5
--- /dev/null
+++ b/Lang/Racket/Count-occurrences-of-a-substring
@@ -0,0 +1 @@
+../../Task/Count-occurrences-of-a-substring/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Count-the-coins b/Lang/Racket/Count-the-coins
new file mode 120000
index 0000000000..78fc6ac07b
--- /dev/null
+++ b/Lang/Racket/Count-the-coins
@@ -0,0 +1 @@
+../../Task/Count-the-coins/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Create-a-file-on-magnetic-tape b/Lang/Racket/Create-a-file-on-magnetic-tape
new file mode 120000
index 0000000000..b4e9c79940
--- /dev/null
+++ b/Lang/Racket/Create-a-file-on-magnetic-tape
@@ -0,0 +1 @@
+../../Task/Create-a-file-on-magnetic-tape/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Create-a-two-dimensional-array-at-runtime b/Lang/Racket/Create-a-two-dimensional-array-at-runtime
new file mode 120000
index 0000000000..f9550393cf
--- /dev/null
+++ b/Lang/Racket/Create-a-two-dimensional-array-at-runtime
@@ -0,0 +1 @@
+../../Task/Create-a-two-dimensional-array-at-runtime/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Create-an-object-at-a-given-address b/Lang/Racket/Create-an-object-at-a-given-address
new file mode 120000
index 0000000000..84364e8f68
--- /dev/null
+++ b/Lang/Racket/Create-an-object-at-a-given-address
@@ -0,0 +1 @@
+../../Task/Create-an-object-at-a-given-address/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Cut-a-rectangle b/Lang/Racket/Cut-a-rectangle
new file mode 120000
index 0000000000..cc13ce2205
--- /dev/null
+++ b/Lang/Racket/Cut-a-rectangle
@@ -0,0 +1 @@
+../../Task/Cut-a-rectangle/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Date-manipulation b/Lang/Racket/Date-manipulation
new file mode 120000
index 0000000000..37f5a8a274
--- /dev/null
+++ b/Lang/Racket/Date-manipulation
@@ -0,0 +1 @@
+../../Task/Date-manipulation/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Day-of-the-week b/Lang/Racket/Day-of-the-week
new file mode 120000
index 0000000000..02af77d42d
--- /dev/null
+++ b/Lang/Racket/Day-of-the-week
@@ -0,0 +1 @@
+../../Task/Day-of-the-week/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Deal-cards-for-FreeCell b/Lang/Racket/Deal-cards-for-FreeCell
new file mode 120000
index 0000000000..e97f44c166
--- /dev/null
+++ b/Lang/Racket/Deal-cards-for-FreeCell
@@ -0,0 +1 @@
+../../Task/Deal-cards-for-FreeCell/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Death-Star b/Lang/Racket/Death-Star
new file mode 120000
index 0000000000..e64e18c94d
--- /dev/null
+++ b/Lang/Racket/Death-Star
@@ -0,0 +1 @@
+../../Task/Death-Star/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Deepcopy b/Lang/Racket/Deepcopy
new file mode 120000
index 0000000000..57b23bd8ca
--- /dev/null
+++ b/Lang/Racket/Deepcopy
@@ -0,0 +1 @@
+../../Task/Deepcopy/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Delete-a-file b/Lang/Racket/Delete-a-file
new file mode 120000
index 0000000000..814fe005e5
--- /dev/null
+++ b/Lang/Racket/Delete-a-file
@@ -0,0 +1 @@
+../../Task/Delete-a-file/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Determine-if-only-one-instance-is-running b/Lang/Racket/Determine-if-only-one-instance-is-running
new file mode 120000
index 0000000000..bb321f27b7
--- /dev/null
+++ b/Lang/Racket/Determine-if-only-one-instance-is-running
@@ -0,0 +1 @@
+../../Task/Determine-if-only-one-instance-is-running/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Dinesmans-multiple-dwelling-problem b/Lang/Racket/Dinesmans-multiple-dwelling-problem
new file mode 120000
index 0000000000..a2c17d9485
--- /dev/null
+++ b/Lang/Racket/Dinesmans-multiple-dwelling-problem
@@ -0,0 +1 @@
+../../Task/Dinesmans-multiple-dwelling-problem/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Dining-philosophers b/Lang/Racket/Dining-philosophers
new file mode 120000
index 0000000000..0a8e8598a7
--- /dev/null
+++ b/Lang/Racket/Dining-philosophers
@@ -0,0 +1 @@
+../../Task/Dining-philosophers/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Distributed-programming b/Lang/Racket/Distributed-programming
new file mode 120000
index 0000000000..362ff1f573
--- /dev/null
+++ b/Lang/Racket/Distributed-programming
@@ -0,0 +1 @@
+../../Task/Distributed-programming/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Doubly-linked-list-Definition b/Lang/Racket/Doubly-linked-list-Definition
new file mode 120000
index 0000000000..5765866d13
--- /dev/null
+++ b/Lang/Racket/Doubly-linked-list-Definition
@@ -0,0 +1 @@
+../../Task/Doubly-linked-list-Definition/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Doubly-linked-list-Element-definition b/Lang/Racket/Doubly-linked-list-Element-definition
new file mode 120000
index 0000000000..351fd693b0
--- /dev/null
+++ b/Lang/Racket/Doubly-linked-list-Element-definition
@@ -0,0 +1 @@
+../../Task/Doubly-linked-list-Element-definition/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Doubly-linked-list-Traversal b/Lang/Racket/Doubly-linked-list-Traversal
new file mode 120000
index 0000000000..a934cb21b1
--- /dev/null
+++ b/Lang/Racket/Doubly-linked-list-Traversal
@@ -0,0 +1 @@
+../../Task/Doubly-linked-list-Traversal/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Draw-a-cuboid b/Lang/Racket/Draw-a-cuboid
new file mode 120000
index 0000000000..915da4e670
--- /dev/null
+++ b/Lang/Racket/Draw-a-cuboid
@@ -0,0 +1 @@
+../../Task/Draw-a-cuboid/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Dutch-national-flag-problem b/Lang/Racket/Dutch-national-flag-problem
new file mode 120000
index 0000000000..2abd3dafdb
--- /dev/null
+++ b/Lang/Racket/Dutch-national-flag-problem
@@ -0,0 +1 @@
+../../Task/Dutch-national-flag-problem/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Dynamic-variable-names b/Lang/Racket/Dynamic-variable-names
new file mode 120000
index 0000000000..a7cf1920c6
--- /dev/null
+++ b/Lang/Racket/Dynamic-variable-names
@@ -0,0 +1 @@
+../../Task/Dynamic-variable-names/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Enforced-immutability b/Lang/Racket/Enforced-immutability
new file mode 120000
index 0000000000..2cf14a1d75
--- /dev/null
+++ b/Lang/Racket/Enforced-immutability
@@ -0,0 +1 @@
+../../Task/Enforced-immutability/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Enumerations b/Lang/Racket/Enumerations
new file mode 120000
index 0000000000..b51fca2df1
--- /dev/null
+++ b/Lang/Racket/Enumerations
@@ -0,0 +1 @@
+../../Task/Enumerations/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Equilibrium-index b/Lang/Racket/Equilibrium-index
new file mode 120000
index 0000000000..76aa3082a6
--- /dev/null
+++ b/Lang/Racket/Equilibrium-index
@@ -0,0 +1 @@
+../../Task/Equilibrium-index/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Ethiopian-multiplication b/Lang/Racket/Ethiopian-multiplication
new file mode 120000
index 0000000000..7fc235341f
--- /dev/null
+++ b/Lang/Racket/Ethiopian-multiplication
@@ -0,0 +1 @@
+../../Task/Ethiopian-multiplication/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Euler-method b/Lang/Racket/Euler-method
new file mode 120000
index 0000000000..5fb9078afa
--- /dev/null
+++ b/Lang/Racket/Euler-method
@@ -0,0 +1 @@
+../../Task/Euler-method/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Evolutionary-algorithm b/Lang/Racket/Evolutionary-algorithm
new file mode 120000
index 0000000000..23681bbf03
--- /dev/null
+++ b/Lang/Racket/Evolutionary-algorithm
@@ -0,0 +1 @@
+../../Task/Evolutionary-algorithm/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Exceptions-Catch-an-exception-thrown-in-a-nested-call b/Lang/Racket/Exceptions-Catch-an-exception-thrown-in-a-nested-call
new file mode 120000
index 0000000000..a805775697
--- /dev/null
+++ b/Lang/Racket/Exceptions-Catch-an-exception-thrown-in-a-nested-call
@@ -0,0 +1 @@
+../../Task/Exceptions-Catch-an-exception-thrown-in-a-nested-call/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Executable-library b/Lang/Racket/Executable-library
new file mode 120000
index 0000000000..fddc8b4ae4
--- /dev/null
+++ b/Lang/Racket/Executable-library
@@ -0,0 +1 @@
+../../Task/Executable-library/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Execute-Brain---- b/Lang/Racket/Execute-Brain----
new file mode 120000
index 0000000000..8f02609d77
--- /dev/null
+++ b/Lang/Racket/Execute-Brain----
@@ -0,0 +1 @@
+../../Task/Execute-Brain----/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Execute-HQ9+ b/Lang/Racket/Execute-HQ9+
new file mode 120000
index 0000000000..52e62e80cb
--- /dev/null
+++ b/Lang/Racket/Execute-HQ9+
@@ -0,0 +1 @@
+../../Task/Execute-HQ9+/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Execute-a-Markov-algorithm b/Lang/Racket/Execute-a-Markov-algorithm
new file mode 120000
index 0000000000..7afd3b276d
--- /dev/null
+++ b/Lang/Racket/Execute-a-Markov-algorithm
@@ -0,0 +1 @@
+../../Task/Execute-a-Markov-algorithm/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Execute-a-system-command b/Lang/Racket/Execute-a-system-command
new file mode 120000
index 0000000000..55067eaf2c
--- /dev/null
+++ b/Lang/Racket/Execute-a-system-command
@@ -0,0 +1 @@
+../../Task/Execute-a-system-command/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Exponentiation-operator b/Lang/Racket/Exponentiation-operator
new file mode 120000
index 0000000000..d55a4f48a3
--- /dev/null
+++ b/Lang/Racket/Exponentiation-operator
@@ -0,0 +1 @@
+../../Task/Exponentiation-operator/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Extend-your-language b/Lang/Racket/Extend-your-language
new file mode 120000
index 0000000000..cf1e8dc0a6
--- /dev/null
+++ b/Lang/Racket/Extend-your-language
@@ -0,0 +1 @@
+../../Task/Extend-your-language/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Extreme-floating-point-values b/Lang/Racket/Extreme-floating-point-values
new file mode 120000
index 0000000000..f99a9eda6d
--- /dev/null
+++ b/Lang/Racket/Extreme-floating-point-values
@@ -0,0 +1 @@
+../../Task/Extreme-floating-point-values/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Factors-of-a-Mersenne-number b/Lang/Racket/Factors-of-a-Mersenne-number
new file mode 120000
index 0000000000..175792b363
--- /dev/null
+++ b/Lang/Racket/Factors-of-a-Mersenne-number
@@ -0,0 +1 @@
+../../Task/Factors-of-a-Mersenne-number/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Factors-of-an-integer b/Lang/Racket/Factors-of-an-integer
new file mode 120000
index 0000000000..4e38bcfa00
--- /dev/null
+++ b/Lang/Racket/Factors-of-an-integer
@@ -0,0 +1 @@
+../../Task/Factors-of-an-integer/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Fast-Fourier-transform b/Lang/Racket/Fast-Fourier-transform
new file mode 120000
index 0000000000..c4817df125
--- /dev/null
+++ b/Lang/Racket/Fast-Fourier-transform
@@ -0,0 +1 @@
+../../Task/Fast-Fourier-transform/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Fibonacci-n-step-number-sequences b/Lang/Racket/Fibonacci-n-step-number-sequences
new file mode 120000
index 0000000000..2e2ec44263
--- /dev/null
+++ b/Lang/Racket/Fibonacci-n-step-number-sequences
@@ -0,0 +1 @@
+../../Task/Fibonacci-n-step-number-sequences/Racket
\ No newline at end of file
diff --git a/Lang/Racket/File-IO b/Lang/Racket/File-IO
new file mode 120000
index 0000000000..36bf4089f3
--- /dev/null
+++ b/Lang/Racket/File-IO
@@ -0,0 +1 @@
+../../Task/File-IO/Racket
\ No newline at end of file
diff --git a/Lang/Racket/File-size b/Lang/Racket/File-size
new file mode 120000
index 0000000000..94e0e6cdd7
--- /dev/null
+++ b/Lang/Racket/File-size
@@ -0,0 +1 @@
+../../Task/File-size/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Filter b/Lang/Racket/Filter
new file mode 120000
index 0000000000..acead43b38
--- /dev/null
+++ b/Lang/Racket/Filter
@@ -0,0 +1 @@
+../../Task/Filter/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Find-common-directory-path b/Lang/Racket/Find-common-directory-path
new file mode 120000
index 0000000000..25ae41183e
--- /dev/null
+++ b/Lang/Racket/Find-common-directory-path
@@ -0,0 +1 @@
+../../Task/Find-common-directory-path/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Find-largest-left-truncatable-prime-in-a-given-base b/Lang/Racket/Find-largest-left-truncatable-prime-in-a-given-base
new file mode 120000
index 0000000000..a5526eb1d7
--- /dev/null
+++ b/Lang/Racket/Find-largest-left-truncatable-prime-in-a-given-base
@@ -0,0 +1 @@
+../../Task/Find-largest-left-truncatable-prime-in-a-given-base/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Find-limit-of-recursion b/Lang/Racket/Find-limit-of-recursion
new file mode 120000
index 0000000000..f2c1b32efe
--- /dev/null
+++ b/Lang/Racket/Find-limit-of-recursion
@@ -0,0 +1 @@
+../../Task/Find-limit-of-recursion/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Find-the-missing-permutation b/Lang/Racket/Find-the-missing-permutation
new file mode 120000
index 0000000000..5638767036
--- /dev/null
+++ b/Lang/Racket/Find-the-missing-permutation
@@ -0,0 +1 @@
+../../Task/Find-the-missing-permutation/Racket
\ No newline at end of file
diff --git a/Lang/Racket/First-class-environments b/Lang/Racket/First-class-environments
new file mode 120000
index 0000000000..7b91c4846a
--- /dev/null
+++ b/Lang/Racket/First-class-environments
@@ -0,0 +1 @@
+../../Task/First-class-environments/Racket
\ No newline at end of file
diff --git a/Lang/Racket/First-class-functions-Use-numbers-analogously b/Lang/Racket/First-class-functions-Use-numbers-analogously
new file mode 120000
index 0000000000..3a8ff87a06
--- /dev/null
+++ b/Lang/Racket/First-class-functions-Use-numbers-analogously
@@ -0,0 +1 @@
+../../Task/First-class-functions-Use-numbers-analogously/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Five-weekends b/Lang/Racket/Five-weekends
new file mode 120000
index 0000000000..89917c2483
--- /dev/null
+++ b/Lang/Racket/Five-weekends
@@ -0,0 +1 @@
+../../Task/Five-weekends/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Flow-control-structures b/Lang/Racket/Flow-control-structures
new file mode 120000
index 0000000000..be32382382
--- /dev/null
+++ b/Lang/Racket/Flow-control-structures
@@ -0,0 +1 @@
+../../Task/Flow-control-structures/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Fork b/Lang/Racket/Fork
new file mode 120000
index 0000000000..96e53114dc
--- /dev/null
+++ b/Lang/Racket/Fork
@@ -0,0 +1 @@
+../../Task/Fork/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Formal-power-series b/Lang/Racket/Formal-power-series
new file mode 120000
index 0000000000..0cabf016a4
--- /dev/null
+++ b/Lang/Racket/Formal-power-series
@@ -0,0 +1 @@
+../../Task/Formal-power-series/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Formatted-numeric-output b/Lang/Racket/Formatted-numeric-output
new file mode 120000
index 0000000000..a0592294c0
--- /dev/null
+++ b/Lang/Racket/Formatted-numeric-output
@@ -0,0 +1 @@
+../../Task/Formatted-numeric-output/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Forward-difference b/Lang/Racket/Forward-difference
new file mode 120000
index 0000000000..0a4fb7bab7
--- /dev/null
+++ b/Lang/Racket/Forward-difference
@@ -0,0 +1 @@
+../../Task/Forward-difference/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Four-bit-adder b/Lang/Racket/Four-bit-adder
new file mode 120000
index 0000000000..0b9a09bf61
--- /dev/null
+++ b/Lang/Racket/Four-bit-adder
@@ -0,0 +1 @@
+../../Task/Four-bit-adder/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Fractal-tree b/Lang/Racket/Fractal-tree
new file mode 120000
index 0000000000..3ed1d86717
--- /dev/null
+++ b/Lang/Racket/Fractal-tree
@@ -0,0 +1 @@
+../../Task/Fractal-tree/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Function-frequency b/Lang/Racket/Function-frequency
new file mode 120000
index 0000000000..cdfa545550
--- /dev/null
+++ b/Lang/Racket/Function-frequency
@@ -0,0 +1 @@
+../../Task/Function-frequency/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Function-prototype b/Lang/Racket/Function-prototype
new file mode 120000
index 0000000000..642b967c3d
--- /dev/null
+++ b/Lang/Racket/Function-prototype
@@ -0,0 +1 @@
+../../Task/Function-prototype/Racket
\ No newline at end of file
diff --git a/Lang/Racket/GUI-Maximum-window-dimensions b/Lang/Racket/GUI-Maximum-window-dimensions
new file mode 120000
index 0000000000..7415768c47
--- /dev/null
+++ b/Lang/Racket/GUI-Maximum-window-dimensions
@@ -0,0 +1 @@
+../../Task/GUI-Maximum-window-dimensions/Racket
\ No newline at end of file
diff --git a/Lang/Racket/GUI-component-interaction b/Lang/Racket/GUI-component-interaction
new file mode 120000
index 0000000000..cf53d974ea
--- /dev/null
+++ b/Lang/Racket/GUI-component-interaction
@@ -0,0 +1 @@
+../../Task/GUI-component-interaction/Racket
\ No newline at end of file
diff --git a/Lang/Racket/GUI-enabling-disabling-of-controls b/Lang/Racket/GUI-enabling-disabling-of-controls
new file mode 120000
index 0000000000..5dd36d31a9
--- /dev/null
+++ b/Lang/Racket/GUI-enabling-disabling-of-controls
@@ -0,0 +1 @@
+../../Task/GUI-enabling-disabling-of-controls/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Gamma-function b/Lang/Racket/Gamma-function
new file mode 120000
index 0000000000..a55079004e
--- /dev/null
+++ b/Lang/Racket/Gamma-function
@@ -0,0 +1 @@
+../../Task/Gamma-function/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Globally-replace-text-in-several-files b/Lang/Racket/Globally-replace-text-in-several-files
new file mode 120000
index 0000000000..69253895b2
--- /dev/null
+++ b/Lang/Racket/Globally-replace-text-in-several-files
@@ -0,0 +1 @@
+../../Task/Globally-replace-text-in-several-files/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Grayscale-image b/Lang/Racket/Grayscale-image
new file mode 120000
index 0000000000..b5cd578f28
--- /dev/null
+++ b/Lang/Racket/Grayscale-image
@@ -0,0 +1 @@
+../../Task/Grayscale-image/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Guess-the-number b/Lang/Racket/Guess-the-number
new file mode 120000
index 0000000000..dd2c20290d
--- /dev/null
+++ b/Lang/Racket/Guess-the-number
@@ -0,0 +1 @@
+../../Task/Guess-the-number/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Guess-the-number-With-feedback b/Lang/Racket/Guess-the-number-With-feedback
new file mode 120000
index 0000000000..ae2a03dea1
--- /dev/null
+++ b/Lang/Racket/Guess-the-number-With-feedback
@@ -0,0 +1 @@
+../../Task/Guess-the-number-With-feedback/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Guess-the-number-With-feedback--player- b/Lang/Racket/Guess-the-number-With-feedback--player-
new file mode 120000
index 0000000000..bc437534eb
--- /dev/null
+++ b/Lang/Racket/Guess-the-number-With-feedback--player-
@@ -0,0 +1 @@
+../../Task/Guess-the-number-With-feedback--player-/Racket
\ No newline at end of file
diff --git a/Lang/Racket/HTTPS-Client-authenticated b/Lang/Racket/HTTPS-Client-authenticated
new file mode 120000
index 0000000000..61a1fb171e
--- /dev/null
+++ b/Lang/Racket/HTTPS-Client-authenticated
@@ -0,0 +1 @@
+../../Task/HTTPS-Client-authenticated/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Handle-a-signal b/Lang/Racket/Handle-a-signal
new file mode 120000
index 0000000000..72094383ad
--- /dev/null
+++ b/Lang/Racket/Handle-a-signal
@@ -0,0 +1 @@
+../../Task/Handle-a-signal/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Happy-numbers b/Lang/Racket/Happy-numbers
new file mode 120000
index 0000000000..5fc1692d96
--- /dev/null
+++ b/Lang/Racket/Happy-numbers
@@ -0,0 +1 @@
+../../Task/Happy-numbers/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Hello-world-Line-printer b/Lang/Racket/Hello-world-Line-printer
new file mode 120000
index 0000000000..f3604f3914
--- /dev/null
+++ b/Lang/Racket/Hello-world-Line-printer
@@ -0,0 +1 @@
+../../Task/Hello-world-Line-printer/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Hello-world-Newline-omission b/Lang/Racket/Hello-world-Newline-omission
new file mode 120000
index 0000000000..2f8265dba9
--- /dev/null
+++ b/Lang/Racket/Hello-world-Newline-omission
@@ -0,0 +1 @@
+../../Task/Hello-world-Newline-omission/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Honeycombs b/Lang/Racket/Honeycombs
new file mode 120000
index 0000000000..651920568d
--- /dev/null
+++ b/Lang/Racket/Honeycombs
@@ -0,0 +1 @@
+../../Task/Honeycombs/Racket
\ No newline at end of file
diff --git a/Lang/Racket/I-before-E-except-after-C b/Lang/Racket/I-before-E-except-after-C
new file mode 120000
index 0000000000..b57b252837
--- /dev/null
+++ b/Lang/Racket/I-before-E-except-after-C
@@ -0,0 +1 @@
+../../Task/I-before-E-except-after-C/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Integer-comparison b/Lang/Racket/Integer-comparison
new file mode 120000
index 0000000000..397a239d59
--- /dev/null
+++ b/Lang/Racket/Integer-comparison
@@ -0,0 +1 @@
+../../Task/Integer-comparison/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Inverted-index b/Lang/Racket/Inverted-index
new file mode 120000
index 0000000000..988ca6f8e4
--- /dev/null
+++ b/Lang/Racket/Inverted-index
@@ -0,0 +1 @@
+../../Task/Inverted-index/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Josephus-problem b/Lang/Racket/Josephus-problem
new file mode 120000
index 0000000000..f0f9ddd5c8
--- /dev/null
+++ b/Lang/Racket/Josephus-problem
@@ -0,0 +1 @@
+../../Task/Josephus-problem/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Jump-anywhere b/Lang/Racket/Jump-anywhere
new file mode 120000
index 0000000000..3e2c0f1240
--- /dev/null
+++ b/Lang/Racket/Jump-anywhere
@@ -0,0 +1 @@
+../../Task/Jump-anywhere/Racket
\ No newline at end of file
diff --git a/Lang/Racket/K-means++-clustering b/Lang/Racket/K-means++-clustering
new file mode 120000
index 0000000000..01512ad0ac
--- /dev/null
+++ b/Lang/Racket/K-means++-clustering
@@ -0,0 +1 @@
+../../Task/K-means++-clustering/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Keyboard-input-Flush-the-keyboard-buffer b/Lang/Racket/Keyboard-input-Flush-the-keyboard-buffer
new file mode 120000
index 0000000000..7d1d2ccfe6
--- /dev/null
+++ b/Lang/Racket/Keyboard-input-Flush-the-keyboard-buffer
@@ -0,0 +1 @@
+../../Task/Keyboard-input-Flush-the-keyboard-buffer/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Keyboard-input-Keypress-check b/Lang/Racket/Keyboard-input-Keypress-check
new file mode 120000
index 0000000000..e388f4492c
--- /dev/null
+++ b/Lang/Racket/Keyboard-input-Keypress-check
@@ -0,0 +1 @@
+../../Task/Keyboard-input-Keypress-check/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Keyboard-input-Obtain-a-Y-or-N-response b/Lang/Racket/Keyboard-input-Obtain-a-Y-or-N-response
new file mode 120000
index 0000000000..862dc17f5d
--- /dev/null
+++ b/Lang/Racket/Keyboard-input-Obtain-a-Y-or-N-response
@@ -0,0 +1 @@
+../../Task/Keyboard-input-Obtain-a-Y-or-N-response/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Keyboard-macros b/Lang/Racket/Keyboard-macros
new file mode 120000
index 0000000000..6b269e7ca4
--- /dev/null
+++ b/Lang/Racket/Keyboard-macros
@@ -0,0 +1 @@
+../../Task/Keyboard-macros/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Knapsack-problem-0-1 b/Lang/Racket/Knapsack-problem-0-1
new file mode 120000
index 0000000000..13c881160f
--- /dev/null
+++ b/Lang/Racket/Knapsack-problem-0-1
@@ -0,0 +1 @@
+../../Task/Knapsack-problem-0-1/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Knapsack-problem-Bounded b/Lang/Racket/Knapsack-problem-Bounded
new file mode 120000
index 0000000000..ac1a713c5e
--- /dev/null
+++ b/Lang/Racket/Knapsack-problem-Bounded
@@ -0,0 +1 @@
+../../Task/Knapsack-problem-Bounded/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Knapsack-problem-Continuous b/Lang/Racket/Knapsack-problem-Continuous
new file mode 120000
index 0000000000..b3c731899c
--- /dev/null
+++ b/Lang/Racket/Knapsack-problem-Continuous
@@ -0,0 +1 @@
+../../Task/Knapsack-problem-Continuous/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Knights-tour b/Lang/Racket/Knights-tour
new file mode 120000
index 0000000000..25e128b24e
--- /dev/null
+++ b/Lang/Racket/Knights-tour
@@ -0,0 +1 @@
+../../Task/Knights-tour/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Knuth-shuffle b/Lang/Racket/Knuth-shuffle
new file mode 120000
index 0000000000..44b6da239f
--- /dev/null
+++ b/Lang/Racket/Knuth-shuffle
@@ -0,0 +1 @@
+../../Task/Knuth-shuffle/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Largest-int-from-concatenated-ints b/Lang/Racket/Largest-int-from-concatenated-ints
new file mode 120000
index 0000000000..d51e0696d5
--- /dev/null
+++ b/Lang/Racket/Largest-int-from-concatenated-ints
@@ -0,0 +1 @@
+../../Task/Largest-int-from-concatenated-ints/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Last-Friday-of-each-month b/Lang/Racket/Last-Friday-of-each-month
new file mode 120000
index 0000000000..55f44984d8
--- /dev/null
+++ b/Lang/Racket/Last-Friday-of-each-month
@@ -0,0 +1 @@
+../../Task/Last-Friday-of-each-month/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Last-letter-first-letter b/Lang/Racket/Last-letter-first-letter
new file mode 120000
index 0000000000..fdd4cf47e0
--- /dev/null
+++ b/Lang/Racket/Last-letter-first-letter
@@ -0,0 +1 @@
+../../Task/Last-letter-first-letter/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Least-common-multiple b/Lang/Racket/Least-common-multiple
new file mode 120000
index 0000000000..7ea4c72f20
--- /dev/null
+++ b/Lang/Racket/Least-common-multiple
@@ -0,0 +1 @@
+../../Task/Least-common-multiple/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Literals-Floating-point b/Lang/Racket/Literals-Floating-point
new file mode 120000
index 0000000000..275147e125
--- /dev/null
+++ b/Lang/Racket/Literals-Floating-point
@@ -0,0 +1 @@
+../../Task/Literals-Floating-point/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Literals-String b/Lang/Racket/Literals-String
new file mode 120000
index 0000000000..8a5fa1a380
--- /dev/null
+++ b/Lang/Racket/Literals-String
@@ -0,0 +1 @@
+../../Task/Literals-String/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Logical-operations b/Lang/Racket/Logical-operations
new file mode 120000
index 0000000000..e0bdb0d333
--- /dev/null
+++ b/Lang/Racket/Logical-operations
@@ -0,0 +1 @@
+../../Task/Logical-operations/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Long-multiplication b/Lang/Racket/Long-multiplication
new file mode 120000
index 0000000000..57fdfa4290
--- /dev/null
+++ b/Lang/Racket/Long-multiplication
@@ -0,0 +1 @@
+../../Task/Long-multiplication/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Longest-string-challenge b/Lang/Racket/Longest-string-challenge
new file mode 120000
index 0000000000..82c6bd48f0
--- /dev/null
+++ b/Lang/Racket/Longest-string-challenge
@@ -0,0 +1 @@
+../../Task/Longest-string-challenge/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Look-and-say-sequence b/Lang/Racket/Look-and-say-sequence
new file mode 120000
index 0000000000..7a8d3ff3ef
--- /dev/null
+++ b/Lang/Racket/Look-and-say-sequence
@@ -0,0 +1 @@
+../../Task/Look-and-say-sequence/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Loops-N-plus-one-half b/Lang/Racket/Loops-N-plus-one-half
new file mode 120000
index 0000000000..42ec78c9af
--- /dev/null
+++ b/Lang/Racket/Loops-N-plus-one-half
@@ -0,0 +1 @@
+../../Task/Loops-N-plus-one-half/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Luhn-test-of-credit-card-numbers b/Lang/Racket/Luhn-test-of-credit-card-numbers
new file mode 120000
index 0000000000..c7f250a617
--- /dev/null
+++ b/Lang/Racket/Luhn-test-of-credit-card-numbers
@@ -0,0 +1 @@
+../../Task/Luhn-test-of-credit-card-numbers/Racket
\ No newline at end of file
diff --git a/Lang/Racket/MD4 b/Lang/Racket/MD4
new file mode 120000
index 0000000000..366f6bffeb
--- /dev/null
+++ b/Lang/Racket/MD4
@@ -0,0 +1 @@
+../../Task/MD4/Racket
\ No newline at end of file
diff --git a/Lang/Racket/MD5-Implementation b/Lang/Racket/MD5-Implementation
new file mode 120000
index 0000000000..64ed4685f3
--- /dev/null
+++ b/Lang/Racket/MD5-Implementation
@@ -0,0 +1 @@
+../../Task/MD5-Implementation/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Mad-Libs b/Lang/Racket/Mad-Libs
new file mode 120000
index 0000000000..fe1d629dfc
--- /dev/null
+++ b/Lang/Racket/Mad-Libs
@@ -0,0 +1 @@
+../../Task/Mad-Libs/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Map-range b/Lang/Racket/Map-range
new file mode 120000
index 0000000000..a6e31c55a1
--- /dev/null
+++ b/Lang/Racket/Map-range
@@ -0,0 +1 @@
+../../Task/Map-range/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Matrix-arithmetic b/Lang/Racket/Matrix-arithmetic
new file mode 120000
index 0000000000..211e318cde
--- /dev/null
+++ b/Lang/Racket/Matrix-arithmetic
@@ -0,0 +1 @@
+../../Task/Matrix-arithmetic/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Matrix-exponentiation-operator b/Lang/Racket/Matrix-exponentiation-operator
new file mode 120000
index 0000000000..2d2fbd3f8b
--- /dev/null
+++ b/Lang/Racket/Matrix-exponentiation-operator
@@ -0,0 +1 @@
+../../Task/Matrix-exponentiation-operator/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Maze-generation b/Lang/Racket/Maze-generation
new file mode 120000
index 0000000000..e3cc18738c
--- /dev/null
+++ b/Lang/Racket/Maze-generation
@@ -0,0 +1 @@
+../../Task/Maze-generation/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Maze-solving b/Lang/Racket/Maze-solving
new file mode 120000
index 0000000000..2ee62cdb84
--- /dev/null
+++ b/Lang/Racket/Maze-solving
@@ -0,0 +1 @@
+../../Task/Maze-solving/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Memory-allocation b/Lang/Racket/Memory-allocation
new file mode 120000
index 0000000000..d2f318f201
--- /dev/null
+++ b/Lang/Racket/Memory-allocation
@@ -0,0 +1 @@
+../../Task/Memory-allocation/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Memory-layout-of-a-data-structure b/Lang/Racket/Memory-layout-of-a-data-structure
new file mode 120000
index 0000000000..6a9c4e0728
--- /dev/null
+++ b/Lang/Racket/Memory-layout-of-a-data-structure
@@ -0,0 +1 @@
+../../Task/Memory-layout-of-a-data-structure/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Menu b/Lang/Racket/Menu
new file mode 120000
index 0000000000..e5ea9e64ed
--- /dev/null
+++ b/Lang/Racket/Menu
@@ -0,0 +1 @@
+../../Task/Menu/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Metered-concurrency b/Lang/Racket/Metered-concurrency
new file mode 120000
index 0000000000..cd9d22cb90
--- /dev/null
+++ b/Lang/Racket/Metered-concurrency
@@ -0,0 +1 @@
+../../Task/Metered-concurrency/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Metronome b/Lang/Racket/Metronome
new file mode 120000
index 0000000000..657ded6715
--- /dev/null
+++ b/Lang/Racket/Metronome
@@ -0,0 +1 @@
+../../Task/Metronome/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Miller-Rabin-primality-test b/Lang/Racket/Miller-Rabin-primality-test
new file mode 120000
index 0000000000..db07b51bff
--- /dev/null
+++ b/Lang/Racket/Miller-Rabin-primality-test
@@ -0,0 +1 @@
+../../Task/Miller-Rabin-primality-test/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Minesweeper-game b/Lang/Racket/Minesweeper-game
new file mode 120000
index 0000000000..d7d84ff227
--- /dev/null
+++ b/Lang/Racket/Minesweeper-game
@@ -0,0 +1 @@
+../../Task/Minesweeper-game/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Modular-exponentiation b/Lang/Racket/Modular-exponentiation
new file mode 120000
index 0000000000..fd351f2f74
--- /dev/null
+++ b/Lang/Racket/Modular-exponentiation
@@ -0,0 +1 @@
+../../Task/Modular-exponentiation/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Modular-inverse b/Lang/Racket/Modular-inverse
new file mode 120000
index 0000000000..aa85526e72
--- /dev/null
+++ b/Lang/Racket/Modular-inverse
@@ -0,0 +1 @@
+../../Task/Modular-inverse/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Monty-Hall-problem b/Lang/Racket/Monty-Hall-problem
new file mode 120000
index 0000000000..2ce26b9cb2
--- /dev/null
+++ b/Lang/Racket/Monty-Hall-problem
@@ -0,0 +1 @@
+../../Task/Monty-Hall-problem/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Morse-code b/Lang/Racket/Morse-code
new file mode 120000
index 0000000000..4d11bab6bc
--- /dev/null
+++ b/Lang/Racket/Morse-code
@@ -0,0 +1 @@
+../../Task/Morse-code/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Multiple-regression b/Lang/Racket/Multiple-regression
new file mode 120000
index 0000000000..103aa47b64
--- /dev/null
+++ b/Lang/Racket/Multiple-regression
@@ -0,0 +1 @@
+../../Task/Multiple-regression/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Multiplication-tables b/Lang/Racket/Multiplication-tables
new file mode 120000
index 0000000000..4e94f9b757
--- /dev/null
+++ b/Lang/Racket/Multiplication-tables
@@ -0,0 +1 @@
+../../Task/Multiplication-tables/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Multiplicative-order b/Lang/Racket/Multiplicative-order
new file mode 120000
index 0000000000..190b922840
--- /dev/null
+++ b/Lang/Racket/Multiplicative-order
@@ -0,0 +1 @@
+../../Task/Multiplicative-order/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Multisplit b/Lang/Racket/Multisplit
new file mode 120000
index 0000000000..8fb2cccc58
--- /dev/null
+++ b/Lang/Racket/Multisplit
@@ -0,0 +1 @@
+../../Task/Multisplit/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Mutex b/Lang/Racket/Mutex
new file mode 120000
index 0000000000..61c87915d1
--- /dev/null
+++ b/Lang/Racket/Mutex
@@ -0,0 +1 @@
+../../Task/Mutex/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Mutual-recursion b/Lang/Racket/Mutual-recursion
new file mode 120000
index 0000000000..ff448baec8
--- /dev/null
+++ b/Lang/Racket/Mutual-recursion
@@ -0,0 +1 @@
+../../Task/Mutual-recursion/Racket
\ No newline at end of file
diff --git a/Lang/Racket/N-queens-problem b/Lang/Racket/N-queens-problem
new file mode 120000
index 0000000000..75a8cd8aed
--- /dev/null
+++ b/Lang/Racket/N-queens-problem
@@ -0,0 +1 @@
+../../Task/N-queens-problem/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Narcissist b/Lang/Racket/Narcissist
new file mode 120000
index 0000000000..cc0ec989bd
--- /dev/null
+++ b/Lang/Racket/Narcissist
@@ -0,0 +1 @@
+../../Task/Narcissist/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Non-continuous-subsequences b/Lang/Racket/Non-continuous-subsequences
new file mode 120000
index 0000000000..76cba4d073
--- /dev/null
+++ b/Lang/Racket/Non-continuous-subsequences
@@ -0,0 +1 @@
+../../Task/Non-continuous-subsequences/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Non-decimal-radices-Convert b/Lang/Racket/Non-decimal-radices-Convert
new file mode 120000
index 0000000000..df04067f3c
--- /dev/null
+++ b/Lang/Racket/Non-decimal-radices-Convert
@@ -0,0 +1 @@
+../../Task/Non-decimal-radices-Convert/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Non-decimal-radices-Input b/Lang/Racket/Non-decimal-radices-Input
new file mode 120000
index 0000000000..f08d111594
--- /dev/null
+++ b/Lang/Racket/Non-decimal-radices-Input
@@ -0,0 +1 @@
+../../Task/Non-decimal-radices-Input/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Non-decimal-radices-Output b/Lang/Racket/Non-decimal-radices-Output
new file mode 120000
index 0000000000..aa664a1b9d
--- /dev/null
+++ b/Lang/Racket/Non-decimal-radices-Output
@@ -0,0 +1 @@
+../../Task/Non-decimal-radices-Output/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Nth-root b/Lang/Racket/Nth-root
new file mode 120000
index 0000000000..3431c17da3
--- /dev/null
+++ b/Lang/Racket/Nth-root
@@ -0,0 +1 @@
+../../Task/Nth-root/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Null-object b/Lang/Racket/Null-object
new file mode 120000
index 0000000000..ecbf1535b7
--- /dev/null
+++ b/Lang/Racket/Null-object
@@ -0,0 +1 @@
+../../Task/Null-object/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Number-names b/Lang/Racket/Number-names
new file mode 120000
index 0000000000..f2646e660f
--- /dev/null
+++ b/Lang/Racket/Number-names
@@ -0,0 +1 @@
+../../Task/Number-names/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Number-reversal-game b/Lang/Racket/Number-reversal-game
new file mode 120000
index 0000000000..7380d3a61a
--- /dev/null
+++ b/Lang/Racket/Number-reversal-game
@@ -0,0 +1 @@
+../../Task/Number-reversal-game/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Numerical-integration b/Lang/Racket/Numerical-integration
new file mode 120000
index 0000000000..cc0170e26e
--- /dev/null
+++ b/Lang/Racket/Numerical-integration
@@ -0,0 +1 @@
+../../Task/Numerical-integration/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Numerical-integration-Gauss-Legendre-Quadrature b/Lang/Racket/Numerical-integration-Gauss-Legendre-Quadrature
new file mode 120000
index 0000000000..cbce79435d
--- /dev/null
+++ b/Lang/Racket/Numerical-integration-Gauss-Legendre-Quadrature
@@ -0,0 +1 @@
+../../Task/Numerical-integration-Gauss-Legendre-Quadrature/Racket
\ No newline at end of file
diff --git a/Lang/Racket/One-dimensional-cellular-automata b/Lang/Racket/One-dimensional-cellular-automata
new file mode 120000
index 0000000000..2a49a4ce8b
--- /dev/null
+++ b/Lang/Racket/One-dimensional-cellular-automata
@@ -0,0 +1 @@
+../../Task/One-dimensional-cellular-automata/Racket
\ No newline at end of file
diff --git a/Lang/Racket/One-of-n-lines-in-a-file b/Lang/Racket/One-of-n-lines-in-a-file
new file mode 120000
index 0000000000..c25983a688
--- /dev/null
+++ b/Lang/Racket/One-of-n-lines-in-a-file
@@ -0,0 +1 @@
+../../Task/One-of-n-lines-in-a-file/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Operator-precedence b/Lang/Racket/Operator-precedence
new file mode 120000
index 0000000000..8e610cc9e0
--- /dev/null
+++ b/Lang/Racket/Operator-precedence
@@ -0,0 +1 @@
+../../Task/Operator-precedence/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Order-two-numerical-lists b/Lang/Racket/Order-two-numerical-lists
new file mode 120000
index 0000000000..1896b35b6f
--- /dev/null
+++ b/Lang/Racket/Order-two-numerical-lists
@@ -0,0 +1 @@
+../../Task/Order-two-numerical-lists/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Ordered-Partitions b/Lang/Racket/Ordered-Partitions
new file mode 120000
index 0000000000..dac2754e58
--- /dev/null
+++ b/Lang/Racket/Ordered-Partitions
@@ -0,0 +1 @@
+../../Task/Ordered-Partitions/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Ordered-words b/Lang/Racket/Ordered-words
new file mode 120000
index 0000000000..e5cf7e7d59
--- /dev/null
+++ b/Lang/Racket/Ordered-words
@@ -0,0 +1 @@
+../../Task/Ordered-words/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Pangram-checker b/Lang/Racket/Pangram-checker
new file mode 120000
index 0000000000..4cc56cebbf
--- /dev/null
+++ b/Lang/Racket/Pangram-checker
@@ -0,0 +1 @@
+../../Task/Pangram-checker/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Parallel-calculations b/Lang/Racket/Parallel-calculations
new file mode 120000
index 0000000000..10d4dad172
--- /dev/null
+++ b/Lang/Racket/Parallel-calculations
@@ -0,0 +1 @@
+../../Task/Parallel-calculations/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Parsing-RPN-calculator-algorithm b/Lang/Racket/Parsing-RPN-calculator-algorithm
new file mode 120000
index 0000000000..27407f040a
--- /dev/null
+++ b/Lang/Racket/Parsing-RPN-calculator-algorithm
@@ -0,0 +1 @@
+../../Task/Parsing-RPN-calculator-algorithm/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Parsing-RPN-to-infix-conversion b/Lang/Racket/Parsing-RPN-to-infix-conversion
new file mode 120000
index 0000000000..7047c941dc
--- /dev/null
+++ b/Lang/Racket/Parsing-RPN-to-infix-conversion
@@ -0,0 +1 @@
+../../Task/Parsing-RPN-to-infix-conversion/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Percentage-difference-between-images b/Lang/Racket/Percentage-difference-between-images
new file mode 120000
index 0000000000..f5d004a0b5
--- /dev/null
+++ b/Lang/Racket/Percentage-difference-between-images
@@ -0,0 +1 @@
+../../Task/Percentage-difference-between-images/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Perfect-numbers b/Lang/Racket/Perfect-numbers
new file mode 120000
index 0000000000..15abdb7936
--- /dev/null
+++ b/Lang/Racket/Perfect-numbers
@@ -0,0 +1 @@
+../../Task/Perfect-numbers/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Permutations b/Lang/Racket/Permutations
new file mode 120000
index 0000000000..599eeaebb1
--- /dev/null
+++ b/Lang/Racket/Permutations
@@ -0,0 +1 @@
+../../Task/Permutations/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Permutations-Derangements b/Lang/Racket/Permutations-Derangements
new file mode 120000
index 0000000000..c54bf76a9b
--- /dev/null
+++ b/Lang/Racket/Permutations-Derangements
@@ -0,0 +1 @@
+../../Task/Permutations-Derangements/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Permutations-by-swapping b/Lang/Racket/Permutations-by-swapping
new file mode 120000
index 0000000000..fa252faeb6
--- /dev/null
+++ b/Lang/Racket/Permutations-by-swapping
@@ -0,0 +1 @@
+../../Task/Permutations-by-swapping/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Pick-random-element b/Lang/Racket/Pick-random-element
new file mode 120000
index 0000000000..18cbccb0bd
--- /dev/null
+++ b/Lang/Racket/Pick-random-element
@@ -0,0 +1 @@
+../../Task/Pick-random-element/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Pig-the-dice-game b/Lang/Racket/Pig-the-dice-game
new file mode 120000
index 0000000000..1eeed62c3f
--- /dev/null
+++ b/Lang/Racket/Pig-the-dice-game
@@ -0,0 +1 @@
+../../Task/Pig-the-dice-game/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Pig-the-dice-game-Player b/Lang/Racket/Pig-the-dice-game-Player
new file mode 120000
index 0000000000..49d55a754f
--- /dev/null
+++ b/Lang/Racket/Pig-the-dice-game-Player
@@ -0,0 +1 @@
+../../Task/Pig-the-dice-game-Player/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Pinstripe-Display b/Lang/Racket/Pinstripe-Display
new file mode 120000
index 0000000000..58e48c6992
--- /dev/null
+++ b/Lang/Racket/Pinstripe-Display
@@ -0,0 +1 @@
+../../Task/Pinstripe-Display/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Pinstripe-Printer b/Lang/Racket/Pinstripe-Printer
new file mode 120000
index 0000000000..fb6d702fb8
--- /dev/null
+++ b/Lang/Racket/Pinstripe-Printer
@@ -0,0 +1 @@
+../../Task/Pinstripe-Printer/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Plot-coordinate-pairs b/Lang/Racket/Plot-coordinate-pairs
new file mode 120000
index 0000000000..046713c4b6
--- /dev/null
+++ b/Lang/Racket/Plot-coordinate-pairs
@@ -0,0 +1 @@
+../../Task/Plot-coordinate-pairs/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Pointers-and-references b/Lang/Racket/Pointers-and-references
new file mode 120000
index 0000000000..e516a92e0f
--- /dev/null
+++ b/Lang/Racket/Pointers-and-references
@@ -0,0 +1 @@
+../../Task/Pointers-and-references/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Polynomial-regression b/Lang/Racket/Polynomial-regression
new file mode 120000
index 0000000000..01a4bbe42c
--- /dev/null
+++ b/Lang/Racket/Polynomial-regression
@@ -0,0 +1 @@
+../../Task/Polynomial-regression/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Price-fraction b/Lang/Racket/Price-fraction
new file mode 120000
index 0000000000..2854fd2b75
--- /dev/null
+++ b/Lang/Racket/Price-fraction
@@ -0,0 +1 @@
+../../Task/Price-fraction/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Primality-by-trial-division b/Lang/Racket/Primality-by-trial-division
new file mode 120000
index 0000000000..966201f483
--- /dev/null
+++ b/Lang/Racket/Primality-by-trial-division
@@ -0,0 +1 @@
+../../Task/Primality-by-trial-division/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Prime-decomposition b/Lang/Racket/Prime-decomposition
new file mode 120000
index 0000000000..e73a22e827
--- /dev/null
+++ b/Lang/Racket/Prime-decomposition
@@ -0,0 +1 @@
+../../Task/Prime-decomposition/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Priority-queue b/Lang/Racket/Priority-queue
new file mode 120000
index 0000000000..4f62e8b5df
--- /dev/null
+++ b/Lang/Racket/Priority-queue
@@ -0,0 +1 @@
+../../Task/Priority-queue/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Probabilistic-choice b/Lang/Racket/Probabilistic-choice
new file mode 120000
index 0000000000..7a99e4788e
--- /dev/null
+++ b/Lang/Racket/Probabilistic-choice
@@ -0,0 +1 @@
+../../Task/Probabilistic-choice/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Problem-of-Apollonius b/Lang/Racket/Problem-of-Apollonius
new file mode 120000
index 0000000000..0636bb8798
--- /dev/null
+++ b/Lang/Racket/Problem-of-Apollonius
@@ -0,0 +1 @@
+../../Task/Problem-of-Apollonius/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Program-termination b/Lang/Racket/Program-termination
new file mode 120000
index 0000000000..5bb8f7767d
--- /dev/null
+++ b/Lang/Racket/Program-termination
@@ -0,0 +1 @@
+../../Task/Program-termination/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Pythagorean-triples b/Lang/Racket/Pythagorean-triples
new file mode 120000
index 0000000000..c3a22bec61
--- /dev/null
+++ b/Lang/Racket/Pythagorean-triples
@@ -0,0 +1 @@
+../../Task/Pythagorean-triples/Racket
\ No newline at end of file
diff --git a/Lang/Racket/QR-decomposition b/Lang/Racket/QR-decomposition
new file mode 120000
index 0000000000..0c4085c9c8
--- /dev/null
+++ b/Lang/Racket/QR-decomposition
@@ -0,0 +1 @@
+../../Task/QR-decomposition/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Quaternion-type b/Lang/Racket/Quaternion-type
new file mode 120000
index 0000000000..88e3ea41c9
--- /dev/null
+++ b/Lang/Racket/Quaternion-type
@@ -0,0 +1 @@
+../../Task/Quaternion-type/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Queue-Definition b/Lang/Racket/Queue-Definition
new file mode 120000
index 0000000000..d5fdba8897
--- /dev/null
+++ b/Lang/Racket/Queue-Definition
@@ -0,0 +1 @@
+../../Task/Queue-Definition/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Queue-Usage b/Lang/Racket/Queue-Usage
new file mode 120000
index 0000000000..8364927e8b
--- /dev/null
+++ b/Lang/Racket/Queue-Usage
@@ -0,0 +1 @@
+../../Task/Queue-Usage/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Quine b/Lang/Racket/Quine
new file mode 120000
index 0000000000..4cbb2b5bda
--- /dev/null
+++ b/Lang/Racket/Quine
@@ -0,0 +1 @@
+../../Task/Quine/Racket
\ No newline at end of file
diff --git a/Lang/Racket/RIPEMD-160 b/Lang/Racket/RIPEMD-160
new file mode 120000
index 0000000000..08ed9496da
--- /dev/null
+++ b/Lang/Racket/RIPEMD-160
@@ -0,0 +1 @@
+../../Task/RIPEMD-160/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Random-number-generator--device- b/Lang/Racket/Random-number-generator--device-
new file mode 120000
index 0000000000..9a28c372aa
--- /dev/null
+++ b/Lang/Racket/Random-number-generator--device-
@@ -0,0 +1 @@
+../../Task/Random-number-generator--device-/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Random-numbers b/Lang/Racket/Random-numbers
new file mode 120000
index 0000000000..1b17e68750
--- /dev/null
+++ b/Lang/Racket/Random-numbers
@@ -0,0 +1 @@
+../../Task/Random-numbers/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Range-extraction b/Lang/Racket/Range-extraction
new file mode 120000
index 0000000000..0c18347749
--- /dev/null
+++ b/Lang/Racket/Range-extraction
@@ -0,0 +1 @@
+../../Task/Range-extraction/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Rate-counter b/Lang/Racket/Rate-counter
new file mode 120000
index 0000000000..e8ec827a6e
--- /dev/null
+++ b/Lang/Racket/Rate-counter
@@ -0,0 +1 @@
+../../Task/Rate-counter/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Read-a-configuration-file b/Lang/Racket/Read-a-configuration-file
new file mode 120000
index 0000000000..9af2a699bc
--- /dev/null
+++ b/Lang/Racket/Read-a-configuration-file
@@ -0,0 +1 @@
+../../Task/Read-a-configuration-file/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Read-a-specific-line-from-a-file b/Lang/Racket/Read-a-specific-line-from-a-file
new file mode 120000
index 0000000000..064aba9fb8
--- /dev/null
+++ b/Lang/Racket/Read-a-specific-line-from-a-file
@@ -0,0 +1 @@
+../../Task/Read-a-specific-line-from-a-file/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Record-sound b/Lang/Racket/Record-sound
new file mode 120000
index 0000000000..00ab02f19a
--- /dev/null
+++ b/Lang/Racket/Record-sound
@@ -0,0 +1 @@
+../../Task/Record-sound/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Remove-duplicate-elements b/Lang/Racket/Remove-duplicate-elements
new file mode 120000
index 0000000000..ed71570621
--- /dev/null
+++ b/Lang/Racket/Remove-duplicate-elements
@@ -0,0 +1 @@
+../../Task/Remove-duplicate-elements/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Remove-lines-from-a-file b/Lang/Racket/Remove-lines-from-a-file
new file mode 120000
index 0000000000..3b8f67912a
--- /dev/null
+++ b/Lang/Racket/Remove-lines-from-a-file
@@ -0,0 +1 @@
+../../Task/Remove-lines-from-a-file/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Respond-to-an-unknown-method-call b/Lang/Racket/Respond-to-an-unknown-method-call
new file mode 120000
index 0000000000..4ed7f39f95
--- /dev/null
+++ b/Lang/Racket/Respond-to-an-unknown-method-call
@@ -0,0 +1 @@
+../../Task/Respond-to-an-unknown-method-call/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Return-multiple-values b/Lang/Racket/Return-multiple-values
new file mode 120000
index 0000000000..285f8f32af
--- /dev/null
+++ b/Lang/Racket/Return-multiple-values
@@ -0,0 +1 @@
+../../Task/Return-multiple-values/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Rock-paper-scissors b/Lang/Racket/Rock-paper-scissors
new file mode 120000
index 0000000000..06bfb7a5cb
--- /dev/null
+++ b/Lang/Racket/Rock-paper-scissors
@@ -0,0 +1 @@
+../../Task/Rock-paper-scissors/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Roman-numerals-Decode b/Lang/Racket/Roman-numerals-Decode
new file mode 120000
index 0000000000..9a3b6e8a48
--- /dev/null
+++ b/Lang/Racket/Roman-numerals-Decode
@@ -0,0 +1 @@
+../../Task/Roman-numerals-Decode/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Roman-numerals-Encode b/Lang/Racket/Roman-numerals-Encode
new file mode 120000
index 0000000000..1673d43423
--- /dev/null
+++ b/Lang/Racket/Roman-numerals-Encode
@@ -0,0 +1 @@
+../../Task/Roman-numerals-Encode/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Roots-of-a-function b/Lang/Racket/Roots-of-a-function
new file mode 120000
index 0000000000..762ad3a54b
--- /dev/null
+++ b/Lang/Racket/Roots-of-a-function
@@ -0,0 +1 @@
+../../Task/Roots-of-a-function/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Roots-of-a-quadratic-function b/Lang/Racket/Roots-of-a-quadratic-function
new file mode 120000
index 0000000000..99f7972ab2
--- /dev/null
+++ b/Lang/Racket/Roots-of-a-quadratic-function
@@ -0,0 +1 @@
+../../Task/Roots-of-a-quadratic-function/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Rosetta-Code-Count-examples b/Lang/Racket/Rosetta-Code-Count-examples
new file mode 120000
index 0000000000..b9d3365fda
--- /dev/null
+++ b/Lang/Racket/Rosetta-Code-Count-examples
@@ -0,0 +1 @@
+../../Task/Rosetta-Code-Count-examples/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Rosetta-Code-Find-unimplemented-tasks b/Lang/Racket/Rosetta-Code-Find-unimplemented-tasks
new file mode 120000
index 0000000000..82f76d4f9e
--- /dev/null
+++ b/Lang/Racket/Rosetta-Code-Find-unimplemented-tasks
@@ -0,0 +1 @@
+../../Task/Rosetta-Code-Find-unimplemented-tasks/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Rosetta-Code-Fix-code-tags b/Lang/Racket/Rosetta-Code-Fix-code-tags
new file mode 120000
index 0000000000..b44514c3fb
--- /dev/null
+++ b/Lang/Racket/Rosetta-Code-Fix-code-tags
@@ -0,0 +1 @@
+../../Task/Rosetta-Code-Fix-code-tags/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Run-length-encoding b/Lang/Racket/Run-length-encoding
new file mode 120000
index 0000000000..ec46e8e648
--- /dev/null
+++ b/Lang/Racket/Run-length-encoding
@@ -0,0 +1 @@
+../../Task/Run-length-encoding/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Runtime-evaluation b/Lang/Racket/Runtime-evaluation
new file mode 120000
index 0000000000..9b2c0de67f
--- /dev/null
+++ b/Lang/Racket/Runtime-evaluation
@@ -0,0 +1 @@
+../../Task/Runtime-evaluation/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Runtime-evaluation-In-an-environment b/Lang/Racket/Runtime-evaluation-In-an-environment
new file mode 120000
index 0000000000..7a820a9e61
--- /dev/null
+++ b/Lang/Racket/Runtime-evaluation-In-an-environment
@@ -0,0 +1 @@
+../../Task/Runtime-evaluation-In-an-environment/Racket
\ No newline at end of file
diff --git a/Lang/Racket/SHA-256 b/Lang/Racket/SHA-256
new file mode 120000
index 0000000000..1a9197d5b5
--- /dev/null
+++ b/Lang/Racket/SHA-256
@@ -0,0 +1 @@
+../../Task/SHA-256/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Safe-addition b/Lang/Racket/Safe-addition
new file mode 120000
index 0000000000..67d0801e6d
--- /dev/null
+++ b/Lang/Racket/Safe-addition
@@ -0,0 +1 @@
+../../Task/Safe-addition/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Scope-Function-names-and-labels b/Lang/Racket/Scope-Function-names-and-labels
new file mode 120000
index 0000000000..b77089cb02
--- /dev/null
+++ b/Lang/Racket/Scope-Function-names-and-labels
@@ -0,0 +1 @@
+../../Task/Scope-Function-names-and-labels/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Self-describing-numbers b/Lang/Racket/Self-describing-numbers
new file mode 120000
index 0000000000..d85b6758fc
--- /dev/null
+++ b/Lang/Racket/Self-describing-numbers
@@ -0,0 +1 @@
+../../Task/Self-describing-numbers/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Self-referential-sequence b/Lang/Racket/Self-referential-sequence
new file mode 120000
index 0000000000..bf3fd3dd21
--- /dev/null
+++ b/Lang/Racket/Self-referential-sequence
@@ -0,0 +1 @@
+../../Task/Self-referential-sequence/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Semordnilap b/Lang/Racket/Semordnilap
new file mode 120000
index 0000000000..e59d43f9db
--- /dev/null
+++ b/Lang/Racket/Semordnilap
@@ -0,0 +1 @@
+../../Task/Semordnilap/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Send-an-unknown-method-call b/Lang/Racket/Send-an-unknown-method-call
new file mode 120000
index 0000000000..b8106be0c8
--- /dev/null
+++ b/Lang/Racket/Send-an-unknown-method-call
@@ -0,0 +1 @@
+../../Task/Send-an-unknown-method-call/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Set-consolidation b/Lang/Racket/Set-consolidation
new file mode 120000
index 0000000000..72871bbb51
--- /dev/null
+++ b/Lang/Racket/Set-consolidation
@@ -0,0 +1 @@
+../../Task/Set-consolidation/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Set-of-real-numbers b/Lang/Racket/Set-of-real-numbers
new file mode 120000
index 0000000000..91275d1ee6
--- /dev/null
+++ b/Lang/Racket/Set-of-real-numbers
@@ -0,0 +1 @@
+../../Task/Set-of-real-numbers/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Set-puzzle b/Lang/Racket/Set-puzzle
new file mode 120000
index 0000000000..10b1572e36
--- /dev/null
+++ b/Lang/Racket/Set-puzzle
@@ -0,0 +1 @@
+../../Task/Set-puzzle/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Seven-sided-dice-from-five-sided-dice b/Lang/Racket/Seven-sided-dice-from-five-sided-dice
new file mode 120000
index 0000000000..1d1d490609
--- /dev/null
+++ b/Lang/Racket/Seven-sided-dice-from-five-sided-dice
@@ -0,0 +1 @@
+../../Task/Seven-sided-dice-from-five-sided-dice/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sierpinski-carpet b/Lang/Racket/Sierpinski-carpet
new file mode 120000
index 0000000000..12bf6dde67
--- /dev/null
+++ b/Lang/Racket/Sierpinski-carpet
@@ -0,0 +1 @@
+../../Task/Sierpinski-carpet/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sierpinski-triangle b/Lang/Racket/Sierpinski-triangle
new file mode 120000
index 0000000000..53f1b101df
--- /dev/null
+++ b/Lang/Racket/Sierpinski-triangle
@@ -0,0 +1 @@
+../../Task/Sierpinski-triangle/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sierpinski-triangle-Graphical b/Lang/Racket/Sierpinski-triangle-Graphical
new file mode 120000
index 0000000000..3160fdd4a4
--- /dev/null
+++ b/Lang/Racket/Sierpinski-triangle-Graphical
@@ -0,0 +1 @@
+../../Task/Sierpinski-triangle-Graphical/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sieve-of-Eratosthenes b/Lang/Racket/Sieve-of-Eratosthenes
new file mode 120000
index 0000000000..c312a2aa5a
--- /dev/null
+++ b/Lang/Racket/Sieve-of-Eratosthenes
@@ -0,0 +1 @@
+../../Task/Sieve-of-Eratosthenes/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Simulate-input-Keyboard b/Lang/Racket/Simulate-input-Keyboard
new file mode 120000
index 0000000000..c07bdc9211
--- /dev/null
+++ b/Lang/Racket/Simulate-input-Keyboard
@@ -0,0 +1 @@
+../../Task/Simulate-input-Keyboard/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Singly-linked-list-Element-definition b/Lang/Racket/Singly-linked-list-Element-definition
new file mode 120000
index 0000000000..f8502be306
--- /dev/null
+++ b/Lang/Racket/Singly-linked-list-Element-definition
@@ -0,0 +1 @@
+../../Task/Singly-linked-list-Element-definition/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Singly-linked-list-Element-insertion b/Lang/Racket/Singly-linked-list-Element-insertion
new file mode 120000
index 0000000000..6071957342
--- /dev/null
+++ b/Lang/Racket/Singly-linked-list-Element-insertion
@@ -0,0 +1 @@
+../../Task/Singly-linked-list-Element-insertion/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Singly-linked-list-Traversal b/Lang/Racket/Singly-linked-list-Traversal
new file mode 120000
index 0000000000..13e22774f9
--- /dev/null
+++ b/Lang/Racket/Singly-linked-list-Traversal
@@ -0,0 +1 @@
+../../Task/Singly-linked-list-Traversal/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sort-an-array-of-composite-structures b/Lang/Racket/Sort-an-array-of-composite-structures
new file mode 120000
index 0000000000..3021d56dc1
--- /dev/null
+++ b/Lang/Racket/Sort-an-array-of-composite-structures
@@ -0,0 +1 @@
+../../Task/Sort-an-array-of-composite-structures/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sort-an-integer-array b/Lang/Racket/Sort-an-integer-array
new file mode 120000
index 0000000000..8199d3890c
--- /dev/null
+++ b/Lang/Racket/Sort-an-integer-array
@@ -0,0 +1 @@
+../../Task/Sort-an-integer-array/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sort-disjoint-sublist b/Lang/Racket/Sort-disjoint-sublist
new file mode 120000
index 0000000000..5b0e7e9093
--- /dev/null
+++ b/Lang/Racket/Sort-disjoint-sublist
@@ -0,0 +1 @@
+../../Task/Sort-disjoint-sublist/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sort-stability b/Lang/Racket/Sort-stability
new file mode 120000
index 0000000000..e5e6d5c8ad
--- /dev/null
+++ b/Lang/Racket/Sort-stability
@@ -0,0 +1 @@
+../../Task/Sort-stability/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sort-using-a-custom-comparator b/Lang/Racket/Sort-using-a-custom-comparator
new file mode 120000
index 0000000000..e783f0147e
--- /dev/null
+++ b/Lang/Racket/Sort-using-a-custom-comparator
@@ -0,0 +1 @@
+../../Task/Sort-using-a-custom-comparator/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sorting-algorithms-Bubble-sort b/Lang/Racket/Sorting-algorithms-Bubble-sort
new file mode 120000
index 0000000000..fcf61fc531
--- /dev/null
+++ b/Lang/Racket/Sorting-algorithms-Bubble-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Bubble-sort/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sorting-algorithms-Cocktail-sort b/Lang/Racket/Sorting-algorithms-Cocktail-sort
new file mode 120000
index 0000000000..8a9ff0192b
--- /dev/null
+++ b/Lang/Racket/Sorting-algorithms-Cocktail-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Cocktail-sort/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sorting-algorithms-Comb-sort b/Lang/Racket/Sorting-algorithms-Comb-sort
new file mode 120000
index 0000000000..5831a905ae
--- /dev/null
+++ b/Lang/Racket/Sorting-algorithms-Comb-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Comb-sort/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sorting-algorithms-Counting-sort b/Lang/Racket/Sorting-algorithms-Counting-sort
new file mode 120000
index 0000000000..0b25a88fb9
--- /dev/null
+++ b/Lang/Racket/Sorting-algorithms-Counting-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Counting-sort/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sorting-algorithms-Gnome-sort b/Lang/Racket/Sorting-algorithms-Gnome-sort
new file mode 120000
index 0000000000..af7b8cb0c1
--- /dev/null
+++ b/Lang/Racket/Sorting-algorithms-Gnome-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Gnome-sort/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sorting-algorithms-Heapsort b/Lang/Racket/Sorting-algorithms-Heapsort
new file mode 120000
index 0000000000..3b503d47ed
--- /dev/null
+++ b/Lang/Racket/Sorting-algorithms-Heapsort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Heapsort/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sorting-algorithms-Merge-sort b/Lang/Racket/Sorting-algorithms-Merge-sort
new file mode 120000
index 0000000000..e83062daec
--- /dev/null
+++ b/Lang/Racket/Sorting-algorithms-Merge-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Merge-sort/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sorting-algorithms-Pancake-sort b/Lang/Racket/Sorting-algorithms-Pancake-sort
new file mode 120000
index 0000000000..bdbae871b0
--- /dev/null
+++ b/Lang/Racket/Sorting-algorithms-Pancake-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Pancake-sort/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sorting-algorithms-Permutation-sort b/Lang/Racket/Sorting-algorithms-Permutation-sort
new file mode 120000
index 0000000000..8fdd66dc40
--- /dev/null
+++ b/Lang/Racket/Sorting-algorithms-Permutation-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Permutation-sort/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sorting-algorithms-Quicksort b/Lang/Racket/Sorting-algorithms-Quicksort
new file mode 120000
index 0000000000..319422c6bd
--- /dev/null
+++ b/Lang/Racket/Sorting-algorithms-Quicksort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Quicksort/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sorting-algorithms-Radix-sort b/Lang/Racket/Sorting-algorithms-Radix-sort
new file mode 120000
index 0000000000..df3a17a7e6
--- /dev/null
+++ b/Lang/Racket/Sorting-algorithms-Radix-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Radix-sort/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sorting-algorithms-Selection-sort b/Lang/Racket/Sorting-algorithms-Selection-sort
new file mode 120000
index 0000000000..48502743f6
--- /dev/null
+++ b/Lang/Racket/Sorting-algorithms-Selection-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Selection-sort/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sorting-algorithms-Shell-sort b/Lang/Racket/Sorting-algorithms-Shell-sort
new file mode 120000
index 0000000000..dafa2de77b
--- /dev/null
+++ b/Lang/Racket/Sorting-algorithms-Shell-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Shell-sort/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sorting-algorithms-Stooge-sort b/Lang/Racket/Sorting-algorithms-Stooge-sort
new file mode 120000
index 0000000000..cb811e4427
--- /dev/null
+++ b/Lang/Racket/Sorting-algorithms-Stooge-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Stooge-sort/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sorting-algorithms-Strand-sort b/Lang/Racket/Sorting-algorithms-Strand-sort
new file mode 120000
index 0000000000..93995dcab5
--- /dev/null
+++ b/Lang/Racket/Sorting-algorithms-Strand-sort
@@ -0,0 +1 @@
+../../Task/Sorting-algorithms-Strand-sort/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Speech-synthesis b/Lang/Racket/Speech-synthesis
new file mode 120000
index 0000000000..f4603dacbd
--- /dev/null
+++ b/Lang/Racket/Speech-synthesis
@@ -0,0 +1 @@
+../../Task/Speech-synthesis/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Spiral-matrix b/Lang/Racket/Spiral-matrix
new file mode 120000
index 0000000000..18c1528d2e
--- /dev/null
+++ b/Lang/Racket/Spiral-matrix
@@ -0,0 +1 @@
+../../Task/Spiral-matrix/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Stable-marriage-problem b/Lang/Racket/Stable-marriage-problem
new file mode 120000
index 0000000000..0e969bdd81
--- /dev/null
+++ b/Lang/Racket/Stable-marriage-problem
@@ -0,0 +1 @@
+../../Task/Stable-marriage-problem/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Stack-traces b/Lang/Racket/Stack-traces
new file mode 120000
index 0000000000..10f122210f
--- /dev/null
+++ b/Lang/Racket/Stack-traces
@@ -0,0 +1 @@
+../../Task/Stack-traces/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Stair-climbing-puzzle b/Lang/Racket/Stair-climbing-puzzle
new file mode 120000
index 0000000000..055f6ecc7b
--- /dev/null
+++ b/Lang/Racket/Stair-climbing-puzzle
@@ -0,0 +1 @@
+../../Task/Stair-climbing-puzzle/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Standard-deviation b/Lang/Racket/Standard-deviation
new file mode 120000
index 0000000000..b548b53cd2
--- /dev/null
+++ b/Lang/Racket/Standard-deviation
@@ -0,0 +1 @@
+../../Task/Standard-deviation/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Stem-and-leaf-plot b/Lang/Racket/Stem-and-leaf-plot
new file mode 120000
index 0000000000..329eed50fb
--- /dev/null
+++ b/Lang/Racket/Stem-and-leaf-plot
@@ -0,0 +1 @@
+../../Task/Stem-and-leaf-plot/Racket
\ No newline at end of file
diff --git a/Lang/Racket/String-case b/Lang/Racket/String-case
new file mode 120000
index 0000000000..69990f0884
--- /dev/null
+++ b/Lang/Racket/String-case
@@ -0,0 +1 @@
+../../Task/String-case/Racket
\ No newline at end of file
diff --git a/Lang/Racket/String-concatenation b/Lang/Racket/String-concatenation
new file mode 120000
index 0000000000..63c269d1c3
--- /dev/null
+++ b/Lang/Racket/String-concatenation
@@ -0,0 +1 @@
+../../Task/String-concatenation/Racket
\ No newline at end of file
diff --git a/Lang/Racket/String-length b/Lang/Racket/String-length
new file mode 120000
index 0000000000..76ea7ab4cd
--- /dev/null
+++ b/Lang/Racket/String-length
@@ -0,0 +1 @@
+../../Task/String-length/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Strip-a-set-of-characters-from-a-string b/Lang/Racket/Strip-a-set-of-characters-from-a-string
new file mode 120000
index 0000000000..4a69b2df94
--- /dev/null
+++ b/Lang/Racket/Strip-a-set-of-characters-from-a-string
@@ -0,0 +1 @@
+../../Task/Strip-a-set-of-characters-from-a-string/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Strip-block-comments b/Lang/Racket/Strip-block-comments
new file mode 120000
index 0000000000..fa46b9b966
--- /dev/null
+++ b/Lang/Racket/Strip-block-comments
@@ -0,0 +1 @@
+../../Task/Strip-block-comments/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Strip-comments-from-a-string b/Lang/Racket/Strip-comments-from-a-string
new file mode 120000
index 0000000000..f52173c00d
--- /dev/null
+++ b/Lang/Racket/Strip-comments-from-a-string
@@ -0,0 +1 @@
+../../Task/Strip-comments-from-a-string/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Strip-control-codes-and-extended-characters-from-a-string b/Lang/Racket/Strip-control-codes-and-extended-characters-from-a-string
new file mode 120000
index 0000000000..bafbbe21f1
--- /dev/null
+++ b/Lang/Racket/Strip-control-codes-and-extended-characters-from-a-string
@@ -0,0 +1 @@
+../../Task/Strip-control-codes-and-extended-characters-from-a-string/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Strip-whitespace-from-a-string-Top-and-tail b/Lang/Racket/Strip-whitespace-from-a-string-Top-and-tail
new file mode 120000
index 0000000000..df6203eaff
--- /dev/null
+++ b/Lang/Racket/Strip-whitespace-from-a-string-Top-and-tail
@@ -0,0 +1 @@
+../../Task/Strip-whitespace-from-a-string-Top-and-tail/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Substring b/Lang/Racket/Substring
new file mode 120000
index 0000000000..87bdd13b8a
--- /dev/null
+++ b/Lang/Racket/Substring
@@ -0,0 +1 @@
+../../Task/Substring/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Subtractive-generator b/Lang/Racket/Subtractive-generator
new file mode 120000
index 0000000000..93e940a61d
--- /dev/null
+++ b/Lang/Racket/Subtractive-generator
@@ -0,0 +1 @@
+../../Task/Subtractive-generator/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Sum-digits-of-an-integer b/Lang/Racket/Sum-digits-of-an-integer
new file mode 120000
index 0000000000..d4c0528c1b
--- /dev/null
+++ b/Lang/Racket/Sum-digits-of-an-integer
@@ -0,0 +1 @@
+../../Task/Sum-digits-of-an-integer/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Table-creation-Postal-addresses b/Lang/Racket/Table-creation-Postal-addresses
new file mode 120000
index 0000000000..54638b2fd5
--- /dev/null
+++ b/Lang/Racket/Table-creation-Postal-addresses
@@ -0,0 +1 @@
+../../Task/Table-creation-Postal-addresses/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Take-notes-on-the-command-line b/Lang/Racket/Take-notes-on-the-command-line
new file mode 120000
index 0000000000..273506e3a6
--- /dev/null
+++ b/Lang/Racket/Take-notes-on-the-command-line
@@ -0,0 +1 @@
+../../Task/Take-notes-on-the-command-line/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Temperature-conversion b/Lang/Racket/Temperature-conversion
new file mode 120000
index 0000000000..7716010b04
--- /dev/null
+++ b/Lang/Racket/Temperature-conversion
@@ -0,0 +1 @@
+../../Task/Temperature-conversion/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Terminal-control-Clear-the-screen b/Lang/Racket/Terminal-control-Clear-the-screen
new file mode 120000
index 0000000000..7e869cdd41
--- /dev/null
+++ b/Lang/Racket/Terminal-control-Clear-the-screen
@@ -0,0 +1 @@
+../../Task/Terminal-control-Clear-the-screen/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Terminal-control-Coloured-text b/Lang/Racket/Terminal-control-Coloured-text
new file mode 120000
index 0000000000..ad9b1aec8f
--- /dev/null
+++ b/Lang/Racket/Terminal-control-Coloured-text
@@ -0,0 +1 @@
+../../Task/Terminal-control-Coloured-text/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Terminal-control-Cursor-movement b/Lang/Racket/Terminal-control-Cursor-movement
new file mode 120000
index 0000000000..e1754f9951
--- /dev/null
+++ b/Lang/Racket/Terminal-control-Cursor-movement
@@ -0,0 +1 @@
+../../Task/Terminal-control-Cursor-movement/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Terminal-control-Cursor-positioning b/Lang/Racket/Terminal-control-Cursor-positioning
new file mode 120000
index 0000000000..9dcd94f1e5
--- /dev/null
+++ b/Lang/Racket/Terminal-control-Cursor-positioning
@@ -0,0 +1 @@
+../../Task/Terminal-control-Cursor-positioning/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Terminal-control-Dimensions b/Lang/Racket/Terminal-control-Dimensions
new file mode 120000
index 0000000000..9e9e21415b
--- /dev/null
+++ b/Lang/Racket/Terminal-control-Dimensions
@@ -0,0 +1 @@
+../../Task/Terminal-control-Dimensions/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Terminal-control-Display-an-extended-character b/Lang/Racket/Terminal-control-Display-an-extended-character
new file mode 120000
index 0000000000..7e4c24fc62
--- /dev/null
+++ b/Lang/Racket/Terminal-control-Display-an-extended-character
@@ -0,0 +1 @@
+../../Task/Terminal-control-Display-an-extended-character/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Terminal-control-Hiding-the-cursor b/Lang/Racket/Terminal-control-Hiding-the-cursor
new file mode 120000
index 0000000000..810a0553d5
--- /dev/null
+++ b/Lang/Racket/Terminal-control-Hiding-the-cursor
@@ -0,0 +1 @@
+../../Task/Terminal-control-Hiding-the-cursor/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Terminal-control-Inverse-video b/Lang/Racket/Terminal-control-Inverse-video
new file mode 120000
index 0000000000..17afd58563
--- /dev/null
+++ b/Lang/Racket/Terminal-control-Inverse-video
@@ -0,0 +1 @@
+../../Task/Terminal-control-Inverse-video/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Terminal-control-Positional-read b/Lang/Racket/Terminal-control-Positional-read
new file mode 120000
index 0000000000..14575392e9
--- /dev/null
+++ b/Lang/Racket/Terminal-control-Positional-read
@@ -0,0 +1 @@
+../../Task/Terminal-control-Positional-read/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Terminal-control-Preserve-screen b/Lang/Racket/Terminal-control-Preserve-screen
new file mode 120000
index 0000000000..8e5edca633
--- /dev/null
+++ b/Lang/Racket/Terminal-control-Preserve-screen
@@ -0,0 +1 @@
+../../Task/Terminal-control-Preserve-screen/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Terminal-control-Ringing-the-terminal-bell b/Lang/Racket/Terminal-control-Ringing-the-terminal-bell
new file mode 120000
index 0000000000..fc64124e41
--- /dev/null
+++ b/Lang/Racket/Terminal-control-Ringing-the-terminal-bell
@@ -0,0 +1 @@
+../../Task/Terminal-control-Ringing-the-terminal-bell/Racket
\ No newline at end of file
diff --git a/Lang/Racket/Terminal-control-Unicode-output b/Lang/Racket/Terminal-control-Unicode-output
new file mode 120000
index 0000000000..52d77bf908
--- /dev/null
+++ b/Lang/Racket/Terminal-control-Unicode-output
@@ -0,0 +1 @@
+../../Task/Terminal-control-Unicode-output/Racket
\ No newline at end of file
diff --git a/Lang/Raven/99-Bottles-of-Beer b/Lang/Raven/99-Bottles-of-Beer
new file mode 120000
index 0000000000..a450ff6071
--- /dev/null
+++ b/Lang/Raven/99-Bottles-of-Beer
@@ -0,0 +1 @@
+../../Task/99-Bottles-of-Beer/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Arithmetic-geometric-mean b/Lang/Raven/Arithmetic-geometric-mean
new file mode 120000
index 0000000000..0a437ffd42
--- /dev/null
+++ b/Lang/Raven/Arithmetic-geometric-mean
@@ -0,0 +1 @@
+../../Task/Arithmetic-geometric-mean/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Boolean-values b/Lang/Raven/Boolean-values
new file mode 120000
index 0000000000..dd8855e9cb
--- /dev/null
+++ b/Lang/Raven/Boolean-values
@@ -0,0 +1 @@
+../../Task/Boolean-values/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Greatest-common-divisor b/Lang/Raven/Greatest-common-divisor
new file mode 120000
index 0000000000..196f1c5c1a
--- /dev/null
+++ b/Lang/Raven/Greatest-common-divisor
@@ -0,0 +1 @@
+../../Task/Greatest-common-divisor/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Greatest-element-of-a-list b/Lang/Raven/Greatest-element-of-a-list
new file mode 120000
index 0000000000..6355355937
--- /dev/null
+++ b/Lang/Raven/Greatest-element-of-a-list
@@ -0,0 +1 @@
+../../Task/Greatest-element-of-a-list/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Greatest-subsequential-sum b/Lang/Raven/Greatest-subsequential-sum
new file mode 120000
index 0000000000..f1a21cfbdc
--- /dev/null
+++ b/Lang/Raven/Greatest-subsequential-sum
@@ -0,0 +1 @@
+../../Task/Greatest-subsequential-sum/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Hamming-numbers b/Lang/Raven/Hamming-numbers
new file mode 120000
index 0000000000..d77c910236
--- /dev/null
+++ b/Lang/Raven/Hamming-numbers
@@ -0,0 +1 @@
+../../Task/Hamming-numbers/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Haversine-formula b/Lang/Raven/Haversine-formula
new file mode 120000
index 0000000000..1c9dd10c62
--- /dev/null
+++ b/Lang/Raven/Haversine-formula
@@ -0,0 +1 @@
+../../Task/Haversine-formula/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Here-document b/Lang/Raven/Here-document
new file mode 120000
index 0000000000..3cbe8812cc
--- /dev/null
+++ b/Lang/Raven/Here-document
@@ -0,0 +1 @@
+../../Task/Here-document/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Higher-order-functions b/Lang/Raven/Higher-order-functions
new file mode 120000
index 0000000000..5790b43897
--- /dev/null
+++ b/Lang/Raven/Higher-order-functions
@@ -0,0 +1 @@
+../../Task/Higher-order-functions/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Integer-comparison b/Lang/Raven/Integer-comparison
new file mode 120000
index 0000000000..eac2719b1a
--- /dev/null
+++ b/Lang/Raven/Integer-comparison
@@ -0,0 +1 @@
+../../Task/Integer-comparison/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Integer-sequence b/Lang/Raven/Integer-sequence
new file mode 120000
index 0000000000..fa14d9d1fa
--- /dev/null
+++ b/Lang/Raven/Integer-sequence
@@ -0,0 +1 @@
+../../Task/Integer-sequence/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Leap-year b/Lang/Raven/Leap-year
new file mode 120000
index 0000000000..b6a3057764
--- /dev/null
+++ b/Lang/Raven/Leap-year
@@ -0,0 +1 @@
+../../Task/Leap-year/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Letter-frequency b/Lang/Raven/Letter-frequency
new file mode 120000
index 0000000000..b9a6dc8df0
--- /dev/null
+++ b/Lang/Raven/Letter-frequency
@@ -0,0 +1 @@
+../../Task/Letter-frequency/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Loops-For-with-a-specified-step b/Lang/Raven/Loops-For-with-a-specified-step
new file mode 120000
index 0000000000..0f7329fd32
--- /dev/null
+++ b/Lang/Raven/Loops-For-with-a-specified-step
@@ -0,0 +1 @@
+../../Task/Loops-For-with-a-specified-step/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Null-object b/Lang/Raven/Null-object
new file mode 120000
index 0000000000..c6e5de5cc5
--- /dev/null
+++ b/Lang/Raven/Null-object
@@ -0,0 +1 @@
+../../Task/Null-object/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Price-fraction b/Lang/Raven/Price-fraction
new file mode 120000
index 0000000000..ddbcd9281d
--- /dev/null
+++ b/Lang/Raven/Price-fraction
@@ -0,0 +1 @@
+../../Task/Price-fraction/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Program-name b/Lang/Raven/Program-name
new file mode 120000
index 0000000000..803f8e90d0
--- /dev/null
+++ b/Lang/Raven/Program-name
@@ -0,0 +1 @@
+../../Task/Program-name/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Random-numbers b/Lang/Raven/Random-numbers
new file mode 120000
index 0000000000..4ef65a13c4
--- /dev/null
+++ b/Lang/Raven/Random-numbers
@@ -0,0 +1 @@
+../../Task/Random-numbers/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Range-expansion b/Lang/Raven/Range-expansion
new file mode 120000
index 0000000000..07cecd7b22
--- /dev/null
+++ b/Lang/Raven/Range-expansion
@@ -0,0 +1 @@
+../../Task/Range-expansion/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Read-entire-file b/Lang/Raven/Read-entire-file
new file mode 120000
index 0000000000..0eb6292568
--- /dev/null
+++ b/Lang/Raven/Read-entire-file
@@ -0,0 +1 @@
+../../Task/Read-entire-file/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Rename-a-file b/Lang/Raven/Rename-a-file
new file mode 120000
index 0000000000..a578186a34
--- /dev/null
+++ b/Lang/Raven/Rename-a-file
@@ -0,0 +1 @@
+../../Task/Rename-a-file/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Return-multiple-values b/Lang/Raven/Return-multiple-values
new file mode 120000
index 0000000000..99b8b1f7fb
--- /dev/null
+++ b/Lang/Raven/Return-multiple-values
@@ -0,0 +1 @@
+../../Task/Return-multiple-values/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Reverse-a-string b/Lang/Raven/Reverse-a-string
new file mode 120000
index 0000000000..00a53d3d5d
--- /dev/null
+++ b/Lang/Raven/Reverse-a-string
@@ -0,0 +1 @@
+../../Task/Reverse-a-string/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Rot-13 b/Lang/Raven/Rot-13
new file mode 120000
index 0000000000..5c7ba1b7f3
--- /dev/null
+++ b/Lang/Raven/Rot-13
@@ -0,0 +1 @@
+../../Task/Rot-13/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Stack-traces b/Lang/Raven/Stack-traces
new file mode 120000
index 0000000000..37dba725dc
--- /dev/null
+++ b/Lang/Raven/Stack-traces
@@ -0,0 +1 @@
+../../Task/Stack-traces/Raven
\ No newline at end of file
diff --git a/Lang/Raven/String-concatenation b/Lang/Raven/String-concatenation
new file mode 120000
index 0000000000..c2bd3b49c5
--- /dev/null
+++ b/Lang/Raven/String-concatenation
@@ -0,0 +1 @@
+../../Task/String-concatenation/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Substring b/Lang/Raven/Substring
new file mode 120000
index 0000000000..90f7b750e1
--- /dev/null
+++ b/Lang/Raven/Substring
@@ -0,0 +1 @@
+../../Task/Substring/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Substring-Top-and-tail b/Lang/Raven/Substring-Top-and-tail
new file mode 120000
index 0000000000..b7751daf2b
--- /dev/null
+++ b/Lang/Raven/Substring-Top-and-tail
@@ -0,0 +1 @@
+../../Task/Substring-Top-and-tail/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Sum-of-a-series b/Lang/Raven/Sum-of-a-series
new file mode 120000
index 0000000000..234deb85da
--- /dev/null
+++ b/Lang/Raven/Sum-of-a-series
@@ -0,0 +1 @@
+../../Task/Sum-of-a-series/Raven
\ No newline at end of file
diff --git a/Lang/Raven/Sum-of-squares b/Lang/Raven/Sum-of-squares
new file mode 120000
index 0000000000..53ef41fec6
--- /dev/null
+++ b/Lang/Raven/Sum-of-squares
@@ -0,0 +1 @@
+../../Task/Sum-of-squares/Raven
\ No newline at end of file
diff --git a/Lang/Raven/System-time b/Lang/Raven/System-time
new file mode 120000
index 0000000000..762d0cc5dc
--- /dev/null
+++ b/Lang/Raven/System-time
@@ -0,0 +1 @@
+../../Task/System-time/Raven
\ No newline at end of file
diff --git a/Lang/Ruby/Modular-inverse b/Lang/Ruby/Modular-inverse
new file mode 120000
index 0000000000..5443647508
--- /dev/null
+++ b/Lang/Ruby/Modular-inverse
@@ -0,0 +1 @@
+../../Task/Modular-inverse/Ruby
\ No newline at end of file
diff --git a/Lang/Run-BASIC/Factorial b/Lang/Run-BASIC/Factorial
new file mode 120000
index 0000000000..e062c40a41
--- /dev/null
+++ b/Lang/Run-BASIC/Factorial
@@ -0,0 +1 @@
+../../Task/Factorial/Run-BASIC
\ No newline at end of file
diff --git a/Lang/Run-BASIC/N-queens-problem b/Lang/Run-BASIC/N-queens-problem
new file mode 120000
index 0000000000..f97f30a031
--- /dev/null
+++ b/Lang/Run-BASIC/N-queens-problem
@@ -0,0 +1 @@
+../../Task/N-queens-problem/Run-BASIC
\ No newline at end of file
diff --git a/Lang/Run-BASIC/Short-circuit-evaluation b/Lang/Run-BASIC/Short-circuit-evaluation
new file mode 120000
index 0000000000..272eea3d37
--- /dev/null
+++ b/Lang/Run-BASIC/Short-circuit-evaluation
@@ -0,0 +1 @@
+../../Task/Short-circuit-evaluation/Run-BASIC
\ No newline at end of file
diff --git a/Lang/SQL/Primality-by-trial-division b/Lang/SQL/Primality-by-trial-division
new file mode 120000
index 0000000000..c80773a4c3
--- /dev/null
+++ b/Lang/SQL/Primality-by-trial-division
@@ -0,0 +1 @@
+../../Task/Primality-by-trial-division/SQL
\ No newline at end of file
diff --git a/Lang/SQL/Rot-13 b/Lang/SQL/Rot-13
new file mode 120000
index 0000000000..f2dd19dfde
--- /dev/null
+++ b/Lang/SQL/Rot-13
@@ -0,0 +1 @@
+../../Task/Rot-13/SQL
\ No newline at end of file
diff --git a/Lang/SQL/Run-length-encoding b/Lang/SQL/Run-length-encoding
new file mode 120000
index 0000000000..298d54c273
--- /dev/null
+++ b/Lang/SQL/Run-length-encoding
@@ -0,0 +1 @@
+../../Task/Run-length-encoding/SQL
\ No newline at end of file
diff --git a/Lang/Scala/Cholesky-decomposition b/Lang/Scala/Cholesky-decomposition
new file mode 120000
index 0000000000..fac29b1398
--- /dev/null
+++ b/Lang/Scala/Cholesky-decomposition
@@ -0,0 +1 @@
+../../Task/Cholesky-decomposition/Scala
\ No newline at end of file
diff --git a/Lang/Scala/Harshad-or-Niven-series b/Lang/Scala/Harshad-or-Niven-series
new file mode 120000
index 0000000000..bb17f608ce
--- /dev/null
+++ b/Lang/Scala/Harshad-or-Niven-series
@@ -0,0 +1 @@
+../../Task/Harshad-or-Niven-series/Scala
\ No newline at end of file
diff --git a/Lang/Scala/Largest-int-from-concatenated-ints b/Lang/Scala/Largest-int-from-concatenated-ints
new file mode 120000
index 0000000000..dffedfc042
--- /dev/null
+++ b/Lang/Scala/Largest-int-from-concatenated-ints
@@ -0,0 +1 @@
+../../Task/Largest-int-from-concatenated-ints/Scala
\ No newline at end of file
diff --git a/Lang/Scala/Number-names b/Lang/Scala/Number-names
new file mode 120000
index 0000000000..1fde11c800
--- /dev/null
+++ b/Lang/Scala/Number-names
@@ -0,0 +1 @@
+../../Task/Number-names/Scala
\ No newline at end of file
diff --git a/Lang/Scala/Ordered-words b/Lang/Scala/Ordered-words
new file mode 120000
index 0000000000..08edf6a098
--- /dev/null
+++ b/Lang/Scala/Ordered-words
@@ -0,0 +1 @@
+../../Task/Ordered-words/Scala
\ No newline at end of file
diff --git a/Lang/Scala/Semordnilap b/Lang/Scala/Semordnilap
new file mode 120000
index 0000000000..f459600706
--- /dev/null
+++ b/Lang/Scala/Semordnilap
@@ -0,0 +1 @@
+../../Task/Semordnilap/Scala
\ No newline at end of file
diff --git a/Lang/Sed/FizzBuzz b/Lang/Sed/FizzBuzz
new file mode 120000
index 0000000000..b2d3c06047
--- /dev/null
+++ b/Lang/Sed/FizzBuzz
@@ -0,0 +1 @@
+../../Task/FizzBuzz/Sed
\ No newline at end of file
diff --git a/Lang/Seed7/00DESCRIPTION b/Lang/Seed7/00DESCRIPTION
index b89818e07b..c6767895fa 100644
--- a/Lang/Seed7/00DESCRIPTION
+++ b/Lang/Seed7/00DESCRIPTION
@@ -1,7 +1,7 @@
{{language|Seed7
|site=http://seed7.sourceforge.net/
|checking=static
-|exec=interpreted}}
+|exec=both}}
{{language programming paradigm|object-oriented}}'''Seed7''' is a general-purpose programming language designed by Thomas Mertes. It is a higher level language compared to [[Ada]], [[C]] / [[C++]] and [[Java]]. The Seed7 interpreter, and the example programs are [[Open source|open-source]] software. An open-source Seed7 [[compiler]] is also available.
In Seed7 new statements and operators can be declared easily. Functions with type results and type parameters are more elegant than the usual template or generics concept. [[Object-oriented_programming|Object orientation]] is used when it brings advantages and not in places when other solutions are more obvious. Although Seed7 contains several concepts of other programming languages it cannot be seen as direct descendant of another programming language.
diff --git a/Lang/Seed7/Anagrams b/Lang/Seed7/Anagrams
new file mode 120000
index 0000000000..7453659752
--- /dev/null
+++ b/Lang/Seed7/Anagrams
@@ -0,0 +1 @@
+../../Task/Anagrams/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Arithmetic-Rational b/Lang/Seed7/Arithmetic-Rational
new file mode 120000
index 0000000000..a4713ef6c4
--- /dev/null
+++ b/Lang/Seed7/Arithmetic-Rational
@@ -0,0 +1 @@
+../../Task/Arithmetic-Rational/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Arithmetic-geometric-mean b/Lang/Seed7/Arithmetic-geometric-mean
new file mode 120000
index 0000000000..7350bd9f36
--- /dev/null
+++ b/Lang/Seed7/Arithmetic-geometric-mean
@@ -0,0 +1 @@
+../../Task/Arithmetic-geometric-mean/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Arrays b/Lang/Seed7/Arrays
new file mode 120000
index 0000000000..a565fa9237
--- /dev/null
+++ b/Lang/Seed7/Arrays
@@ -0,0 +1 @@
+../../Task/Arrays/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Averages-Mean-angle b/Lang/Seed7/Averages-Mean-angle
new file mode 120000
index 0000000000..6ce141c1c6
--- /dev/null
+++ b/Lang/Seed7/Averages-Mean-angle
@@ -0,0 +1 @@
+../../Task/Averages-Mean-angle/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Averages-Mode b/Lang/Seed7/Averages-Mode
new file mode 120000
index 0000000000..c4ca764260
--- /dev/null
+++ b/Lang/Seed7/Averages-Mode
@@ -0,0 +1 @@
+../../Task/Averages-Mode/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Best-shuffle b/Lang/Seed7/Best-shuffle
new file mode 120000
index 0000000000..0b0a1c48ca
--- /dev/null
+++ b/Lang/Seed7/Best-shuffle
@@ -0,0 +1 @@
+../../Task/Best-shuffle/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Call-a-function b/Lang/Seed7/Call-a-function
new file mode 120000
index 0000000000..0f50528412
--- /dev/null
+++ b/Lang/Seed7/Call-a-function
@@ -0,0 +1 @@
+../../Task/Call-a-function/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Catalan-numbers b/Lang/Seed7/Catalan-numbers
new file mode 120000
index 0000000000..beff004b64
--- /dev/null
+++ b/Lang/Seed7/Catalan-numbers
@@ -0,0 +1 @@
+../../Task/Catalan-numbers/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Check-Machin-like-formulas b/Lang/Seed7/Check-Machin-like-formulas
new file mode 120000
index 0000000000..ab7320e952
--- /dev/null
+++ b/Lang/Seed7/Check-Machin-like-formulas
@@ -0,0 +1 @@
+../../Task/Check-Machin-like-formulas/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Cholesky-decomposition b/Lang/Seed7/Cholesky-decomposition
new file mode 120000
index 0000000000..ce28fb7903
--- /dev/null
+++ b/Lang/Seed7/Cholesky-decomposition
@@ -0,0 +1 @@
+../../Task/Cholesky-decomposition/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Digital-root b/Lang/Seed7/Digital-root
new file mode 120000
index 0000000000..659398393d
--- /dev/null
+++ b/Lang/Seed7/Digital-root
@@ -0,0 +1 @@
+../../Task/Digital-root/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Discordian-date b/Lang/Seed7/Discordian-date
new file mode 120000
index 0000000000..473e34f7b9
--- /dev/null
+++ b/Lang/Seed7/Discordian-date
@@ -0,0 +1 @@
+../../Task/Discordian-date/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Exceptions b/Lang/Seed7/Exceptions
new file mode 120000
index 0000000000..aa02172ef2
--- /dev/null
+++ b/Lang/Seed7/Exceptions
@@ -0,0 +1 @@
+../../Task/Exceptions/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Execute-Brain---- b/Lang/Seed7/Execute-Brain----
new file mode 120000
index 0000000000..02c824b9ab
--- /dev/null
+++ b/Lang/Seed7/Execute-Brain----
@@ -0,0 +1 @@
+../../Task/Execute-Brain----/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Execute-SNUSP b/Lang/Seed7/Execute-SNUSP
new file mode 120000
index 0000000000..08c1565fec
--- /dev/null
+++ b/Lang/Seed7/Execute-SNUSP
@@ -0,0 +1 @@
+../../Task/Execute-SNUSP/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Factors-of-a-Mersenne-number b/Lang/Seed7/Factors-of-a-Mersenne-number
new file mode 120000
index 0000000000..ed068b32cd
--- /dev/null
+++ b/Lang/Seed7/Factors-of-a-Mersenne-number
@@ -0,0 +1 @@
+../../Task/Factors-of-a-Mersenne-number/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Fibonacci-n-step-number-sequences b/Lang/Seed7/Fibonacci-n-step-number-sequences
new file mode 120000
index 0000000000..32d2b9da54
--- /dev/null
+++ b/Lang/Seed7/Fibonacci-n-step-number-sequences
@@ -0,0 +1 @@
+../../Task/Fibonacci-n-step-number-sequences/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Floyds-triangle b/Lang/Seed7/Floyds-triangle
new file mode 120000
index 0000000000..68de473cfa
--- /dev/null
+++ b/Lang/Seed7/Floyds-triangle
@@ -0,0 +1 @@
+../../Task/Floyds-triangle/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Guess-the-number-With-feedback--player- b/Lang/Seed7/Guess-the-number-With-feedback--player-
new file mode 120000
index 0000000000..de42711676
--- /dev/null
+++ b/Lang/Seed7/Guess-the-number-With-feedback--player-
@@ -0,0 +1 @@
+../../Task/Guess-the-number-With-feedback--player-/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Happy-numbers b/Lang/Seed7/Happy-numbers
new file mode 120000
index 0000000000..69190d8213
--- /dev/null
+++ b/Lang/Seed7/Happy-numbers
@@ -0,0 +1 @@
+../../Task/Happy-numbers/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Harshad-or-Niven-series b/Lang/Seed7/Harshad-or-Niven-series
new file mode 120000
index 0000000000..5108ecb1e8
--- /dev/null
+++ b/Lang/Seed7/Harshad-or-Niven-series
@@ -0,0 +1 @@
+../../Task/Harshad-or-Niven-series/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Haversine-formula b/Lang/Seed7/Haversine-formula
new file mode 120000
index 0000000000..5463c72d5a
--- /dev/null
+++ b/Lang/Seed7/Haversine-formula
@@ -0,0 +1 @@
+../../Task/Haversine-formula/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Hello-world-Web-server b/Lang/Seed7/Hello-world-Web-server
new file mode 120000
index 0000000000..02ba282ed3
--- /dev/null
+++ b/Lang/Seed7/Hello-world-Web-server
@@ -0,0 +1 @@
+../../Task/Hello-world-Web-server/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Holidays-related-to-Easter b/Lang/Seed7/Holidays-related-to-Easter
new file mode 120000
index 0000000000..f0609080dd
--- /dev/null
+++ b/Lang/Seed7/Holidays-related-to-Easter
@@ -0,0 +1 @@
+../../Task/Holidays-related-to-Easter/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/I-before-E-except-after-C b/Lang/Seed7/I-before-E-except-after-C
new file mode 120000
index 0000000000..357b798222
--- /dev/null
+++ b/Lang/Seed7/I-before-E-except-after-C
@@ -0,0 +1 @@
+../../Task/I-before-E-except-after-C/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Identity-matrix b/Lang/Seed7/Identity-matrix
new file mode 120000
index 0000000000..1684187021
--- /dev/null
+++ b/Lang/Seed7/Identity-matrix
@@ -0,0 +1 @@
+../../Task/Identity-matrix/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Inheritance-Single b/Lang/Seed7/Inheritance-Single
new file mode 120000
index 0000000000..b9b47ef90f
--- /dev/null
+++ b/Lang/Seed7/Inheritance-Single
@@ -0,0 +1 @@
+../../Task/Inheritance-Single/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Josephus-problem b/Lang/Seed7/Josephus-problem
new file mode 120000
index 0000000000..9cc4846e5b
--- /dev/null
+++ b/Lang/Seed7/Josephus-problem
@@ -0,0 +1 @@
+../../Task/Josephus-problem/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Knapsack-problem-Unbounded b/Lang/Seed7/Knapsack-problem-Unbounded
new file mode 120000
index 0000000000..30ccd287f8
--- /dev/null
+++ b/Lang/Seed7/Knapsack-problem-Unbounded
@@ -0,0 +1 @@
+../../Task/Knapsack-problem-Unbounded/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Knuth-shuffle b/Lang/Seed7/Knuth-shuffle
new file mode 120000
index 0000000000..e249a889a8
--- /dev/null
+++ b/Lang/Seed7/Knuth-shuffle
@@ -0,0 +1 @@
+../../Task/Knuth-shuffle/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Last-Friday-of-each-month b/Lang/Seed7/Last-Friday-of-each-month
new file mode 120000
index 0000000000..ce280f9697
--- /dev/null
+++ b/Lang/Seed7/Last-Friday-of-each-month
@@ -0,0 +1 @@
+../../Task/Last-Friday-of-each-month/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Linear-congruential-generator b/Lang/Seed7/Linear-congruential-generator
new file mode 120000
index 0000000000..f70450f36f
--- /dev/null
+++ b/Lang/Seed7/Linear-congruential-generator
@@ -0,0 +1 @@
+../../Task/Linear-congruential-generator/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Longest-common-subsequence b/Lang/Seed7/Longest-common-subsequence
new file mode 120000
index 0000000000..7b12340bd5
--- /dev/null
+++ b/Lang/Seed7/Longest-common-subsequence
@@ -0,0 +1 @@
+../../Task/Longest-common-subsequence/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Mad-Libs b/Lang/Seed7/Mad-Libs
new file mode 120000
index 0000000000..e711fb566e
--- /dev/null
+++ b/Lang/Seed7/Mad-Libs
@@ -0,0 +1 @@
+../../Task/Mad-Libs/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Miller-Rabin-primality-test b/Lang/Seed7/Miller-Rabin-primality-test
new file mode 120000
index 0000000000..298c8872f9
--- /dev/null
+++ b/Lang/Seed7/Miller-Rabin-primality-test
@@ -0,0 +1 @@
+../../Task/Miller-Rabin-primality-test/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Modular-exponentiation b/Lang/Seed7/Modular-exponentiation
new file mode 120000
index 0000000000..91a0902ce1
--- /dev/null
+++ b/Lang/Seed7/Modular-exponentiation
@@ -0,0 +1 @@
+../../Task/Modular-exponentiation/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Modular-inverse b/Lang/Seed7/Modular-inverse
new file mode 120000
index 0000000000..63977a2038
--- /dev/null
+++ b/Lang/Seed7/Modular-inverse
@@ -0,0 +1 @@
+../../Task/Modular-inverse/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Multiple-distinct-objects b/Lang/Seed7/Multiple-distinct-objects
new file mode 120000
index 0000000000..1f48322936
--- /dev/null
+++ b/Lang/Seed7/Multiple-distinct-objects
@@ -0,0 +1 @@
+../../Task/Multiple-distinct-objects/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/N-queens-problem b/Lang/Seed7/N-queens-problem
new file mode 120000
index 0000000000..033050bf8c
--- /dev/null
+++ b/Lang/Seed7/N-queens-problem
@@ -0,0 +1 @@
+../../Task/N-queens-problem/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Non-decimal-radices-Convert b/Lang/Seed7/Non-decimal-radices-Convert
new file mode 120000
index 0000000000..67cc2f7a3f
--- /dev/null
+++ b/Lang/Seed7/Non-decimal-radices-Convert
@@ -0,0 +1 @@
+../../Task/Non-decimal-radices-Convert/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Non-decimal-radices-Input b/Lang/Seed7/Non-decimal-radices-Input
new file mode 120000
index 0000000000..0c58a023f4
--- /dev/null
+++ b/Lang/Seed7/Non-decimal-radices-Input
@@ -0,0 +1 @@
+../../Task/Non-decimal-radices-Input/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Operator-precedence b/Lang/Seed7/Operator-precedence
new file mode 120000
index 0000000000..140d0558f9
--- /dev/null
+++ b/Lang/Seed7/Operator-precedence
@@ -0,0 +1 @@
+../../Task/Operator-precedence/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Order-two-numerical-lists b/Lang/Seed7/Order-two-numerical-lists
new file mode 120000
index 0000000000..1bb8780c7d
--- /dev/null
+++ b/Lang/Seed7/Order-two-numerical-lists
@@ -0,0 +1 @@
+../../Task/Order-two-numerical-lists/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Pi b/Lang/Seed7/Pi
new file mode 120000
index 0000000000..e1582e2be6
--- /dev/null
+++ b/Lang/Seed7/Pi
@@ -0,0 +1 @@
+../../Task/Pi/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Polymorphism b/Lang/Seed7/Polymorphism
new file mode 120000
index 0000000000..d94633b957
--- /dev/null
+++ b/Lang/Seed7/Polymorphism
@@ -0,0 +1 @@
+../../Task/Polymorphism/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Rock-paper-scissors b/Lang/Seed7/Rock-paper-scissors
new file mode 120000
index 0000000000..a2e462b0c6
--- /dev/null
+++ b/Lang/Seed7/Rock-paper-scissors
@@ -0,0 +1 @@
+../../Task/Rock-paper-scissors/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Semordnilap b/Lang/Seed7/Semordnilap
new file mode 120000
index 0000000000..e164087e16
--- /dev/null
+++ b/Lang/Seed7/Semordnilap
@@ -0,0 +1 @@
+../../Task/Semordnilap/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/String-comparison b/Lang/Seed7/String-comparison
new file mode 120000
index 0000000000..dc1adb7046
--- /dev/null
+++ b/Lang/Seed7/String-comparison
@@ -0,0 +1 @@
+../../Task/String-comparison/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Subtractive-generator b/Lang/Seed7/Subtractive-generator
new file mode 120000
index 0000000000..fe89dd795e
--- /dev/null
+++ b/Lang/Seed7/Subtractive-generator
@@ -0,0 +1 @@
+../../Task/Subtractive-generator/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Temperature-conversion b/Lang/Seed7/Temperature-conversion
new file mode 120000
index 0000000000..295ba26e6b
--- /dev/null
+++ b/Lang/Seed7/Temperature-conversion
@@ -0,0 +1 @@
+../../Task/Temperature-conversion/Seed7
\ No newline at end of file
diff --git a/Lang/Seed7/Terminal-control-Ringing-the-terminal-bell b/Lang/Seed7/Terminal-control-Ringing-the-terminal-bell
new file mode 120000
index 0000000000..56d57415fe
--- /dev/null
+++ b/Lang/Seed7/Terminal-control-Ringing-the-terminal-bell
@@ -0,0 +1 @@
+../../Task/Terminal-control-Ringing-the-terminal-bell/Seed7
\ No newline at end of file
diff --git a/Lang/Smalltalk/Euler-method b/Lang/Smalltalk/Euler-method
new file mode 120000
index 0000000000..fa57b43f0d
--- /dev/null
+++ b/Lang/Smalltalk/Euler-method
@@ -0,0 +1 @@
+../../Task/Euler-method/Smalltalk
\ No newline at end of file
diff --git a/Lang/UNIX-Shell/Determine-if-a-string-is-numeric b/Lang/UNIX-Shell/Determine-if-a-string-is-numeric
new file mode 120000
index 0000000000..692b61692d
--- /dev/null
+++ b/Lang/UNIX-Shell/Determine-if-a-string-is-numeric
@@ -0,0 +1 @@
+../../Task/Determine-if-a-string-is-numeric/UNIX-Shell
\ No newline at end of file
diff --git a/Lang/UNIX-Shell/Range-expansion b/Lang/UNIX-Shell/Range-expansion
new file mode 120000
index 0000000000..61d7621eaf
--- /dev/null
+++ b/Lang/UNIX-Shell/Range-expansion
@@ -0,0 +1 @@
+../../Task/Range-expansion/UNIX-Shell
\ No newline at end of file
diff --git a/Lang/UNIX-Shell/Range-extraction b/Lang/UNIX-Shell/Range-extraction
new file mode 120000
index 0000000000..4cc4bc0661
--- /dev/null
+++ b/Lang/UNIX-Shell/Range-extraction
@@ -0,0 +1 @@
+../../Task/Range-extraction/UNIX-Shell
\ No newline at end of file
diff --git a/Lang/UNIX-Shell/Reverse-a-string b/Lang/UNIX-Shell/Reverse-a-string
new file mode 120000
index 0000000000..fc78238c9f
--- /dev/null
+++ b/Lang/UNIX-Shell/Reverse-a-string
@@ -0,0 +1 @@
+../../Task/Reverse-a-string/UNIX-Shell
\ No newline at end of file
diff --git a/Lang/UNIX-Shell/Roman-numerals-Decode b/Lang/UNIX-Shell/Roman-numerals-Decode
new file mode 120000
index 0000000000..ef35c57cef
--- /dev/null
+++ b/Lang/UNIX-Shell/Roman-numerals-Decode
@@ -0,0 +1 @@
+../../Task/Roman-numerals-Decode/UNIX-Shell
\ No newline at end of file
diff --git a/Lang/UNIX-Shell/Sierpinski-carpet b/Lang/UNIX-Shell/Sierpinski-carpet
new file mode 120000
index 0000000000..54a5ee55af
--- /dev/null
+++ b/Lang/UNIX-Shell/Sierpinski-carpet
@@ -0,0 +1 @@
+../../Task/Sierpinski-carpet/UNIX-Shell
\ No newline at end of file
diff --git a/Lang/X86-Assembly/Hofstadter-Conway-$10,000-sequence b/Lang/X86-Assembly/Hofstadter-Conway-$10,000-sequence
new file mode 120000
index 0000000000..3bdca1894e
--- /dev/null
+++ b/Lang/X86-Assembly/Hofstadter-Conway-$10,000-sequence
@@ -0,0 +1 @@
+../../Task/Hofstadter-Conway-$10,000-sequence/X86-Assembly
\ No newline at end of file
diff --git a/Lang/X86-Assembly/Leap-year b/Lang/X86-Assembly/Leap-year
new file mode 120000
index 0000000000..fa0eae715e
--- /dev/null
+++ b/Lang/X86-Assembly/Leap-year
@@ -0,0 +1 @@
+../../Task/Leap-year/X86-Assembly
\ No newline at end of file
diff --git a/Task/100-doors/D/100-doors.d b/Task/100-doors/D/100-doors.d
index 36a6d0204c..65e8f69802 100644
--- a/Task/100-doors/D/100-doors.d
+++ b/Task/100-doors/D/100-doors.d
@@ -1,36 +1,31 @@
-import std.stdio;
+import std.stdio, std.algorithm, std.range;
-enum DoorState { Closed, Open }
-alias DoorState[] Doors;
+enum DoorState : bool { closed, open }
+alias Doors = DoorState[];
-Doors flipUnoptimized(Doors doors) {
- doors[] = DoorState.Closed;
- foreach (i; 0 .. doors.length)
- for (int j = i; j < doors.length; j += i+1)
- if (doors[j] == DoorState.Open)
- doors[j] = DoorState.Closed;
+Doors flipUnoptimized(Doors doors) pure nothrow {
+ doors[] = DoorState.closed;
+
+ foreach (immutable i; 0 .. doors.length)
+ for (int j = i; j < doors.length; j += i + 1)
+ if (doors[j] == DoorState.open)
+ doors[j] = DoorState.closed;
else
- doors[j] = DoorState.Open;
+ doors[j] = DoorState.open;
return doors;
}
-Doors flipOptimized(Doors doors) {
- doors[] = DoorState.Closed;
- for (int i = 1; i*i <= doors.length; i++)
- doors[i*i - 1] = DoorState.Open;
+Doors flipOptimized(Doors doors) pure nothrow {
+ doors[] = DoorState.closed;
+ for (int i = 1; i ^^ 2 <= doors.length; i++)
+ doors[i ^^ 2 - 1] = DoorState.open;
return doors;
}
-// test program
void main() {
auto doors = new Doors(100);
- foreach (i, door; flipUnoptimized(doors))
- if (door == DoorState.Open)
- write(i+1, " ");
- writeln();
- foreach (i, door; flipOptimized(doors))
- if (door == DoorState.Open)
- write(i+1, " ");
- writeln();
+ foreach (const open; [doors.dup.flipUnoptimized,
+ doors.dup.flipOptimized])
+ iota(1, open.length + 1).filter!(i => open[i - 1]).writeln;
}
diff --git a/Task/100-doors/FBSL/100-doors-1.fbsl b/Task/100-doors/FBSL/100-doors-1.fbsl
new file mode 100644
index 0000000000..1366413ba0
--- /dev/null
+++ b/Task/100-doors/FBSL/100-doors-1.fbsl
@@ -0,0 +1,15 @@
+#AppType Console
+
+Dim doors[], n As Integer = 100
+
+For Dim i = 1 To n
+ For Dim j = i To n Step i
+ doors[j] = Not doors[j]
+ Next
+Next
+
+For i = 1 To n
+ If doors[i] Then Print "Door ", i, " is open"
+Next
+
+Pause
diff --git a/Task/100-doors/FBSL/100-doors-2.fbsl b/Task/100-doors/FBSL/100-doors-2.fbsl
new file mode 100644
index 0000000000..acf28ad036
--- /dev/null
+++ b/Task/100-doors/FBSL/100-doors-2.fbsl
@@ -0,0 +1,12 @@
+#APPTYPE CONSOLE
+
+DIM i = 0, j = 0, door = 1
+
+WHILE INCR(i) < 101
+ IF i = door THEN
+ PRINT "Door ", door, " open"
+ INCR(door, INCR((INCR(j) << 1)))
+ END IF
+WEND
+
+PAUSE
diff --git a/Task/100-doors/Factor/100-doors-1.factor b/Task/100-doors/Factor/100-doors-1.factor
new file mode 100644
index 0000000000..6dccd9b759
--- /dev/null
+++ b/Task/100-doors/Factor/100-doors-1.factor
@@ -0,0 +1,23 @@
+USING: bit-arrays formatting fry kernel math math.ranges
+sequences ;
+IN: rosetta.doors
+
+CONSTANT: number-of-doors 100
+
+: multiples ( n -- range )
+ 0 number-of-doors rot