Skip to content

Commit 7bfb564

Browse files
authored
Merge pull request #2 from leios/johhnry_updates
adding processing visualization and small merges.
2 parents 3cee797 + 782cbc1 commit 7bfb564

File tree

3 files changed

+71
-1
lines changed

3 files changed

+71
-1
lines changed

book.json

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,26 @@
140140
"lang": "f90",
141141
"name": "Fortran90"
142142
},
143+
{
144+
"lang": "factor",
145+
"name": "Factor"
146+
},
147+
{
148+
"lang": "ws",
149+
"name": "Whitespace"
150+
},
151+
{
152+
"lang": "scala",
153+
"name": "Scala"
154+
},
155+
{
156+
"lang": "emojic",
157+
"name": "Emojicode"
158+
},
159+
{
160+
"lang": "lolcode",
161+
"name": "LOLCODE"
162+
},
143163
{
144164
"lang": "pde",
145165
"name": "Processing"

contents/bogo_sort/bogo_sort.md

Lines changed: 51 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,26 @@ In code, it looks something like this:
4343
[import:16-18, lang:"nim"](code/nim/bogo_sort.nim)
4444
{% sample lang="ruby" %}
4545
[import:12-16, lang:"ruby"](code/ruby/bogo.rb)
46+
{% sample lang="emojic" %}
47+
[import:2-6, lang:"emojicode"](code/emojicode/bogo_sort.emojic)
48+
{% sample lang="factor" %}
49+
[import:10-12, lang:"factor"](code/factor/bogo_sort.factor)
50+
{% sample lang="f90" %}
51+
[import:24-32, lang:"fortran"](code/fortran/bogo.f90)
52+
{% sample lang="racket" %}
53+
[import:3-8, lang:"lisp"](code/racket/bogo_sort.rkt)
54+
{% sample lang="st" %}
55+
[import:2-6, lang:"st"](code/smalltalk/bogosort.st)
56+
{% sample lang="bash" %}
57+
[import:38-45, lang:"bash"](code/bash/bogo_sort.bash)
58+
{% sample lang="asm-x64" %}
59+
[import:93-113, lang:"asm-x64"](code/asm-x64/bogo_sort.s)
60+
{% sample lang="lisp" %}
61+
[import:20-24, lang:"lisp"](code/clisp/bogo-sort.lisp)
62+
{% sample lang="crystal" %}
63+
[import:10-14, lang:"crystal"](code/crystal/bogo.cr)
64+
{% sample lang="r" %}
65+
[import:1-6, lang:"r"](code/r/bogo_sort.r)
4666
{% sample lang="pde" %}
4767
[import:55-59, lang:"java"](code/processing/bogoSort.pde)
4868
{% endmethod %}
@@ -51,6 +71,17 @@ That's it.
5171
Ship it!
5272
We are done here!
5373

74+
Here's a visual representation of what's happening:
75+
76+
<p>
77+
<img class="center" src="res/bogo.gif" width="500" />
78+
</p>
79+
80+
81+
You can check out the code for this visualization by changing the language to `Processing`.
82+
Here, we see that the array shuffles about at random until it eventually finds the correct result.
83+
Obviously, bogo sort is almost impossible with a large array.
84+
5485
## Example Code
5586

5687
{% method %}
@@ -87,11 +118,30 @@ We are done here!
87118
[import, lang:"nim"](code/nim/bogo_sort.nim)
88119
{% sample lang="ruby" %}
89120
[import, lang:"ruby"](code/ruby/bogo.rb)
121+
{% sample lang="emojic" %}
122+
[import, lang:"emojicode"](code/emojicode/bogo_sort.emojic)
123+
{% sample lang="factor" %}
124+
[import, lang:"factor"](code/factor/bogo_sort.factor)
125+
{% sample lang="f90" %}
126+
[import, lang:"fortran"](code/fortran/bogo.f90)
127+
{% sample lang="racket" %}
128+
[import, lang:"lisp"](code/racket/bogo_sort.rkt)
129+
{% sample lang="st" %}
130+
[import, lang:"st"](code/smalltalk/bogosort.st)
131+
{% sample lang="bash" %}
132+
[import, lang:"bash"](code/bash/bogo_sort.bash)
133+
{% sample lang="asm-x64" %}
134+
[import, lang:"asm-x64"](code/asm-x64/bogo_sort.s)
135+
{% sample lang="lisp" %}
136+
[import, lang:"lisp"](code/clisp/bogo-sort.lisp)
137+
{% sample lang="crystal" %}
138+
[import, lang:"crystal"](code/crystal/bogo.cr)
139+
{% sample lang="r" %}
140+
[import, lang:"r"](code/r/bogo_sort.r)
90141
{% sample lang="pde" %}
91142
[import:1-53, lang:"java"](code/processing/bogoSort.pde)
92143
{% endmethod %}
93144

94-
95145
<script>
96146
MathJax.Hub.Queue(["Typeset",MathJax.Hub]);
97147
</script>

contents/bogo_sort/res/bogo.gif

2.96 MB
Loading

0 commit comments

Comments
 (0)