Skip to content

joewing/maze

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Dec 18, 2021
20b9e7d · Dec 18, 2021

History

47 Commits
Dec 12, 2015
Jul 28, 2015
Jul 25, 2015
Jan 1, 2013
Dec 18, 2021
Dec 18, 2021
Jan 1, 2013
Jun 1, 2016
Mar 7, 2014
Jan 1, 2013
Jan 1, 2013
Oct 9, 2013
Jan 1, 2013
Nov 16, 2013
Apr 20, 2013
Nov 13, 2013
Jan 12, 2014
Jan 1, 2013
Jan 1, 2013
Nov 16, 2013
Jul 3, 2021
Aug 15, 2014
Jan 1, 2013
Feb 19, 2015
Oct 23, 2013
Jan 1, 2013
Aug 30, 2020
Aug 28, 2017
Jan 1, 2013
Oct 2, 2013
Jan 1, 2013
Dec 17, 2019
Jan 1, 2013
Dec 17, 2019
Jan 1, 2013
Oct 3, 2013
Jan 1, 2013
Dec 9, 2015
Apr 20, 2013
Feb 19, 2018
Apr 21, 2013
Jan 1, 2013
Jan 1, 2013
Aug 17, 2017
Jan 1, 2013
Feb 21, 2018
Jan 1, 2013
Jan 1, 2013
Mar 28, 2013
Jul 3, 2021
Jul 3, 2021

Repository files navigation

Maze Generators

This is a collection of maze generators in variety of programming languages. Where possible, the same basic maze generation algorithm is used (recursive backtracking). Some of the maze generators include a solver as well. Keep in mind that I wrote these over a span of several years primarily as a way to familiarize myself with new programming languages. For that reason, some of the code could be improved, which I fully intend to do eventually.

Here is a list of the languages:

  • maze.4th Forth
  • maze8.8o Octo Chip-8 high-level assembly language
  • maze.adb Ada
  • maze.arm ARM Assembly Language
  • maze.awk AWK
  • maze.bas BASIC
  • maze.c C
  • maze8.ch8 Chip-8
  • maze.clj Clojure
  • maze.cob COBOL
  • maze.cpp C++
  • maze.d D
  • maze.dylan Dylan
  • maze.e Eiffel
  • maze.erl Erlang
  • maze.factor Factor
  • maze.f90 Fortran
  • maze.go Go
  • maze.hs Haskell
  • maze.io Io
  • Maze.java Java
  • maze.jcl IBM System/360 Assembly Language
  • maze.jl JL
  • maze.kt Kotlin
  • maze.lisp Common Lisp
  • maze.lua Lua
  • maze.mips 64-bit MIPS Assembly Language
  • maze.ml OCaml
  • maze.nim Nimrod
  • maze.pas Pascal
  • maze.pl Perl
  • maze.pro Prolog
  • maze.pli PL/1
  • maze.py Python
  • maze.r R
  • maze.rb Ruby
  • maze.rs Rust
  • maze.s x86-64
  • maze.scad OpenSCAD
  • Maze.scala Scala
  • maze.sml SML
  • maze.sno SNOBOL4
  • maze.sparc SPARC64 Assembly Language
  • maze.st Smalltalk
  • maze.swift Swift
  • maze.tcl TCL
  • maze.v Coq
  • maze.vim VIM

Some languages in which I have yet to implement a maze generator include:

  • APL
  • Groovy
  • J
  • Joy
  • Julia
  • Vala

There are, of course, many others. I prioritize real programming languages over joke programming languages such as BF, Whitespace, INTERCAL, etc. There are two reasons for this: (1) most of the joke programming languages are very primitive, making the implementation of a maze generator a complex task and (2) there are many real programming languages available that provide interesting targets.