
This TODO file is usually outdated, please check the
WishList in the doc section at http://PFE.sf.net - that
one is the primary resource, and much longer.

step 1 
===========

* tweak make system, so that the sources are always
  built as library (libpfe). The binary is then either
  dynamically or statically bound to it, actually the
  binary contains the options-scanner, other setup-calls
  and then goes p4_main. needs to sort out main.c
  DONE - gone back to use automake, will even make a pfe.dll

* extend autoconf support to include the embedded
  platforms that the pfe is currently developped for
  DROP - currently using another makemake system at Tek

step 2 
===========

* nuke the module-system and replace it with libtool's
  convenience kit.
  NEXT - next to show up

* make the terminal-drivers loadable (depending on
  p4module/gmodule) and make the drivers an option
  an setup-time, may extend to change the driver
  at run-time. Nice.
  DELAY - delayed into step 6

step 3
===========

* nuke the showhelp system, may want to start a simple 
  html-1.0 reader that can interface to the terminal 
  the pfe is attached to, so it can run inside the 
  forth box.
  INFO - showhelp system not distributed anymore

* turn the texi-files into plain html-1.0 and make
  them cross-ref with the doc-pfe generated html-files.
  NEXT - documentation has to be updated anyway

* start accepting contributions, may need to setup
  a public CVS-rep.
  DROP - no feedback anyway, so no need to setup CVS

step 4
===========

* check if the block-editor and internal-debugger
  do need some help to survive the rest of these steps.
  STEP - have survived sharedlib-transitions

* start examples that use some multithreading system,
  provide options to build the library with gnu-pth
  support.

* provide automatic test routines that can be used
  by clients to check combinations with their modules.
  DONE - partly

step 5
===========

* make the sources extra clean w.r.t. the naming of
  functions and macros, so it can be safely integrated
  with other support-library and does not interfere
  with functions and macros anywhere else. Needs a 
  thourough check, hopefully only minor changes after
  the steps above.
  DONE - else are bugs

* sort out what is internal to the pfe-kernel, needed
  by pfe-specific modules, and what is needed by some
  app that just wants to use forth as a config lang,
  rearrange headers.
  DONE - mostly

step 6
===========

* make example programs that use pfe as a config lang,
  provide interface calls that do not need to export
  the register allocation (which does depend on config.h).

* run on as many posix-systems as possible, and may make
  a backport to win/dos (currently only supported as cygwin).
  DONE - mingw32 builds, including cross-gcc

steps beyond
=============

* may fetch the direct-threaded forth macros from gforth.
  Use it to a) provide direct-threading as an option
  and b) build a native code compiler with those primitives.
  REPLACE - target call-threading and sbr-threading instead
            going through direct-threading as its base

* may build a native code compiler by fuzzy recognition of
  what the C compiler spits out.
  INTERESTING - but mostly useless

contributions
=============

these were included even before 0.1x.x and need to be checked
if they still work in later version (0.28.x at the time of writing).

* Kevin Haddock has provided the ability to call Linux' shared
  library functions from within Forth. Still experimental.
  Work on that continues with the creation of header files.

* Lennart Benschop provided a nice 6809 simulator with assembler
  as a demo program.

a great thanks to David N. Williams for the dstrings-ext
being shipped with pfe since 0.30.x - it should be ensured to
always run, no matter what other changes there are in pfe core.

stability
=========
note that in all the steps the versions are thouroughly tested
to provide product quality in stability and usability. This
is due the fact that the pfe is delivered to customers
of the k12xx Measurement Systems. So checking for stability
is permantly on the TODO list - in every single step above.

Other's Wishlist
===========
* A socket interface is needed. The socket-ext.c does already exist 
  but there is nothing in it. [multiple users, e.g. pfv* 25.3.2003]
  * dave_taliaferro points to jeff fox having a variant [3./8.4.2003]
  * c.prevotaux wants it together with mysql [14.9./4.10.2004]
* easy way to import C functions - Tek has some VXCFUNC for import
  inside VxWorks - what about others? [3./8.4.2003]
* compiling an ELF executable (since we have SBR already, hey!)
  [tonibin* 4.9.2004]
* standalone system with its own filesystem (i.e. forth operating system)
  [tonibin* 4.9.2004]
* serial port interface! (especially windows users require that)
