- Error checking needs to pay attention to struct/end.
- Indentation:
    <space>let x = blah ;;;
    <match-space>
- double semi weirdness
- Synchronization issues (timeout)
- Debugger is broken
- Infinite loops cannot be broken by the stop button. When you run the program
  again, it just falls prey to the infinite loop, even if you fixed it.
- Input doesn't work. More precisely, DrOCaML thinks programs are waiting for
  input when they're often not (executing and has wanted input in the past, or
  terminated and has wanted input in the past. I've seen both with Game.)


=== indentation and UI ===

- Whitespace at the top of the file breaks indentation
- Linebreak in the first line of code breaks indentation
- Improper syntax highlighting for characters: when 'a' is typed, the first
  apostrophe turns red and the second turns black.


=== source with errors ===

Character numbers in error messages seem to refer to the wrong locations when
using modules

 * I think they're offsets within the module declaration, though that they're
   character offsets at all is a bug IMO -jon
 

Strange module errors with no apparent cause or pattern (usually the module
will fail to compile...sometimes methods as simple as copying code to another
file fixes the issue)

 * I think some of this might be because it's hard to notice meaningful errors
   in DrOCaML sometimes -jon


DrOCaML doesn't stop on failed top-level-defs, which leads to a bunch of false
error messages sometimes ("thing not defined", where thing was defined a lot
earlier, but had an error), and obscures erros in a heap of "- : " outputs from
OCaML.


save and check types should display some kind of warning when it's using
an incomplete compile.
