Pan# Support Page

Known problems in Pan#:

  • Long Compiles: some programs take a long time (30 seconds - 2 minutes) to compile. This is due to the fact that programs are de-functionalized, which can lead to serious code bloat. This can't be fixed without writing a completely new backend for Pan#.
  • Runs only on Windows: To use Pan# on a Mac or Linux you would need need to use a portable version of .NET like Mono. If anyone wants to try this out we can provide the sources to Pan#.
  • General Looping not allowed: Because loops are fully unrolled during compilation, it is not possible to write programs with indefinite iteration / recursion. Fixing this would be very painful.
  • Poor graphics performance: We have not optimized the graphics performance at all. Someone that knows more about .NET could probably make a significant improvement in the graphics performance.
  • Image update problem: Some controls do not update the picture when the should. Occasionally you need to resize the canvas or something like that to see the effect of a control change.
  • Image size and type problems: GIFs written by Pan# are unreadable by many programs. This is a .NET problems. There are also problems with large GIFs. Again, this is not inherent to Pan#.
  • Missing Haskell features: Haskell programmers will miss having lists, data declarations, and overloaded functions. Sorry!
  • Poor error messages: While we have added type checking and improved error reporting things are still less than ideal.
  • Color interpolation bug: One of the texture examples changes color during anti-aliasing. This appears to be a bug in color interpolation.
  • Lack of an IDE: An integrated editing environment would be great! If you want to try and plug Pan# into an existing IDE we'll be happy to help.

If you have questions or problems please contact John Peterson for help.

 

 

 

Computer Languages for Secondary Education