Dump of Unsorted Morsels for Programmers

This is a repository of more or less random programming things, made for my own amusement and edification. I don't know how this will evolve over time (if at all), but I envision this as a collection of interactive visual explanations of algorithms and data structures.


Here's what I have in DUMP as of now:

  • Box-Muller Transform. Given a source of uniformly-distributed random numbers, generate normally-distributed random numbers.
  • Euclidean Algorithm. Given two positive natural numbers, find their greatest common divisor (GCD).

Random Notes

I initially started DUMP as a GitHub repository. Then I realized that some interactive diagrams (in the spirit of what Amit Patel does) would be nice.

So I started to convert my old DUMP implementations to this new, hopefully richer format, using the following tools:

  • Typescript. Since the beginning I wanted to write DUMP in a language reasonably similar to The One Lingua Franca of Computing. I certainly wanted a typed language, because I feel that explicit types convey important information for algorithms explanations. Now that I wanted some web-friendly language, I decided to use a subset of Typescript that is not too dissimilar from C (maybe tossing in an associative array here and there).

  • Halp. I wanted to include both code and written notes about the “programming things”. I soon decided that literate programming would be a nice tool for this endeavor, so I quickly hacked a Markdown-based tool for this task: Halp.

  • D3 (Data-Driven Documents). A very nice Javascript library for making the kind of interactive visual explanations I want to make.

The DUMP code snippets are licensed under the MIT license.


Comments powered by Disqus