Currently known bugs (30/1/07  v 0.2.4)

Major (i.e. must be fixed for next version):

Minor:

* Function applications need to be on names, rather than complex
  expressions. This should be more general, eg f.a[5](args) should be allowed.
  (5/2/05 - bit better now; as long as it's not a Void function, you
  can apply any typed expression).
* Attempting to marshal Foreign Ptrs should be an error - need a
  built-in function table for Ptr.
* The compiler should attempt to report as many errors as possible
  (might be tricky). 
* Should be a warning if module name doesn't correspond with filename,
  as module chasing won't work in that case. Not a problem for
  programs or webapps however.
* Unhelpful error if main/Default/etc has the wrong type
* Dependency chasing and recompiling doesn't work with include()d
  parts of modules.
* Compiling complex modules/programs sometimes gives an "out of stack
  space" error. Does provide a workaround in the error message, though.
* Overloading functions with the same name and parameters but
  different return type compiles in the kayac stage but not in gcc
  stage
* Overloading functions with different parameters types where the
  difference is based on type variables (e.g. Int(a,b,String) and
  Int(String,a,b(a))) gives functions with the same C name.
* Overloading functions where the parameters of one type are a subset of
  the parameters of the other fails.
* Error report for adding the same constructor twice in a case statement is
  unhelpful.

Wishlist:

* Union Tag could be unique within modules to aid run-time type-checking.
