
- Give "Where" a much lower precedence.

- fill in analytical functions
- extend examples
  x arithmetic
    x larger numbers
    x bit shift/bitwise operations
  x analytic functions:
   x- sin/cos/exp/ln/tan/arctan/sqrt
  x simplifying expressions
    x Simplify
    x TrigSimpCombine
    x CanProve
    x FactorialSimplify
  x approximating 
    x Newton
    x Taylor
    x LagrangeInterpolant
  - programming
    - assigning variables
    - defining functions
    - lists
      - creation, head/tail/set/get/concat/length
    - strings
      - concat/length/get/set
    - subsitution (Subst)
    - n .. m
    - threading
  - linear algebra
    - vectors
      - inproduct/crossproduct
    - matrices
      - inverse/determinant/diagonalmatrix
  - polynomials
    - expand
    - factorize
    - gcd
    - divide
  - misc
    - limits
    - factorials/binomials/factorialsimplify
    - complex numbers
      - creation, real, imaginary parts

x changing mouse cursor on mouse going over?




x add the files:
  x special.yml
  x differentiate.yml
  x integrate.yml
  x analytic.yml




Yacas helper:
x commands specific to the Java console
  - restart
  - cls
  - ??
- complex numbers (Re, Im)
- integration
- differentiation
- factoring 
- factorials, binomials, factorial simplification
- simplifiers
- Round, floor, ceil
- Sqrt
- Gcd
- Sqrt, Sin, Cos, etcetera
- Taylor series
- Newton
- Groebner
- programming
  - assigning variables
  - defining functions
  - groups of expressions
  - local variables
  - loops
  - if statements
  - patterns
- Solvers
- Advanced concepts
  - threading
- Advanced operators
  - n .. m
  - a:{}
- Vectors
- matrices
- Version




TODO:
-xEmbed Yacas in the web site somehow.
- test: FromBase to also work with real numbers
- test: ToBase to also work with real numbers
- real fix for the sockets in yacasmain.cpp

- Find out why MathPi is so slow when executed from script. Perhaps conversions to/from string in MathSin?
- document the mental model for arb precision numerics
- test program for the cyacas.h api
- implement plots from Java
- implement plugins from Java
- add the filescanner and pcre plugins

x Document the Java version (how to compile, how it works, how to invoke, which files are output, etcetera).
x Remove BinaryPrecision from the environment (Java)
x Systemcall seems to be available from "Runtime" class.
x Find out why Sqrt is not precise enough
x update changes.html
x check that all files are checked in
x fix for plugins_available.h not being available at the beginning
x one failing test, in numerics.yts:269: NearRational of Pi() is off quite a bit.
x IsSmallPrime(65539) returns True, should apparently be false!
  Probably just make FastIsPrime return 0 if number larger than 65535
x Floor, Ceil, do not take iTensExp in to account!
x Equals does not take iTensExp in to account

- run test scripts, and fix problems accordingly
- LispFastMod
- LispDllEnumerate
- LispDllDirectory
- LispDllLoad
- LispDllUnload

- LispPatchLoad
- LispPatchString


- Some more functions that are defined in yacasmain.cpp, 
	Exit
	IsExitRequested
	HistorySize
	StaSiz
	IsPromptShown
	ReadCmdLineString
	FileSize

- command line flags for console version, useful for doing the test scripts

- Supporting the default read-eval-print loop from script?

- Run the tests from Java
- Give some performance statistics on comparison between Java and C++
- button in applet that allows stopping current calculation


- LispDefaultTokenizer
- LispCommonLispTokenizer
- LispCTokenizer
- LispXmlTokenizer
- LispExplodeTag




- LispCustomEval
- LispCustomEvalExpression
- LispCustomEvalResult
- LispCustomEvalLocals
- LispCustomEvalStop
- LispTraceRule
- LispTraceStack





- port over the user-defined function classes

- FastMod
- pre-port all functions (in one large file, so I can easily do a
  global query-replace everywhere, before copy-pasting the code
  to Java)
- port functions one by one
- Remove LispPtr in favor of LispObject (needs lots of changes,
  getters and setters).
- Change name of HashTable to StringTable
- two methods were doubly defined in corefunctions.h (NewLocals and another one nearby)
- Double-check that LocalFrame is handled correctly everywhere, eg the destructor is not called, so need to call its Delete method directly
- CommonLispTokenizer.java


TO DO Java UI, before I can use it comfortably too:
- let the applet get focus immediately
- screen is not white on Windows
- try to find a proportional font that runs everywhere 
- truncating strings (making them continue on the next line
- hints for the console applet too 
- Allow editing one file for loading
- stop current execution
- applet should be a notebook with embedded objects (graphs?)
- nicely rendered formulae
- nice link to help files.
- easy getting started for beginners.



