From f802e0dcae08825868ffbac7a036cbde126229c9 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Fri, 1 Apr 2016 23:02:23 -0400 Subject: [PATCH] WIP --- TODO | 2 +- docs/images/bench-gabriel.png | Bin 0 -> 14165 bytes 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 docs/images/bench-gabriel.png diff --git a/TODO b/TODO index c2a9ab3b..2fc0601b 100644 --- a/TODO +++ b/TODO @@ -32,7 +32,7 @@ Tier 1: - lattice.scm - matrix.scm - mazefun.scm - - maze.scm - There is a problem reading the input file + - maze.scm - vector-ref invalid index -6 - mbrot.scm - mbrotZ.scm - No complex library - mperm.scm diff --git a/docs/images/bench-gabriel.png b/docs/images/bench-gabriel.png new file mode 100644 index 0000000000000000000000000000000000000000..a0f1b0b49418c5d1b45c5f4c94e434d5ca4f07ab GIT binary patch literal 14165 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 RFRLxnKBj*(