| This file describes all the things left to do on ANSI figForth. The |
-*- outline -*- |
| list is not complete, so you should add topics you miss or refine |
|
| existing topics. If you are working on a topic, add your name to the |
This file describes all the things left to do on GNU Forth. The list |
| right of the topic. If you have completed the work, remove the topic. |
is not complete, so you should add topics you miss or refine existing |
| |
topics. If you are working on a topic, add your name to the right of |
| |
the topic. If you have completed the work, remove the topic. |
| |
|
| This an emacs outline. Use '*' to create topics. |
This an emacs outline. Use '*' to create topics. |
| |
|
| **measure the effect of some variations on different machines: |
**measure the effect of some variations on different machines: |
| direct/indirect, NEXT splitting, keeping the TOSses in variables |
direct/indirect, NEXT splitting, keeping the TOSses in variables |
| **make it easy to put the right variation for each processor into the |
**make it easy to put the right variation for each processor into the |
| configuration. |
configuration. I.e., on installation all combinations of options |
| |
should be measured and the fastest chosen. Knowing OS and architecture |
| |
is not enough, the best otions depend more on the processor and the |
| |
compiler version. |
| |
|
| * ANSI Forth |
* ANSI Forth |
| **Core and Core Ext |
Add the remaining words |
| *** high-level words |
|
| **Other Word Sets |
* Configuration |
| |
We should have a config script so people don't need to edit the |
| |
Makefile etc. |
| |
|
| *Run-time System |
*Run-time System |
| |
**startup.fs takes too long to load. |
| |
Make the compiler much faster (hardly possible) or provide some way to |
| |
make an image that includes everything loaded by startup.fs |
| **Gender-independent image file format and loader |
**Gender-independent image file format and loader |
| **Memory Management |
**Stack Checking using the MMU where the OS makes it possible. |
| **Stack Checking |
|
| On most systems we could use the MMU (OS dependent). |
|
| |
|
| *Porting/Portability |
*Porting/Portability |
| ** Machines/OSs |
** Machines/OSs |
| UNIX (all machines supported by gcc) |
VMS (VAX,AXP) |
| VMS (Vax) |
DOS 8088 (16-bit or 32-bit? Note: there are no far pointers in gforth, |
| DOS Extender, 386sx and up |
so 16-bit means 64k max.) |
| DOS 8088 (16-bit or 32-bit?) |
|
| Windows |
Windows |
| OS/2 |
OS/2 |
| Mac |
Mac |
| Atari |
Atari |
| Amiga |
Amiga |
| Use gcc-generated assembly on machines without gcc |
Use gcc-generated assembly on machines without gcc, but with |
| |
processors supported by gcc |
| *Locals |
|
| **Concept |
|
| **Implementation |
|
| |
|
| *Postponing anton |
|
| |
|
| *Foreign Language Interface |
*Foreign Language Interface |
| **Concept anton |
If anybody wants to do this, mail me |
| |
(anton@mips.complang.tuwien.ac.at). I have given some thought to this |
| |
and will type in my notes if you are interested. |
| **C |
**C |
| **FORTRAN |
**FORTRAN |
| **C++ |
**C++ |
| |
|
| *Windows and Graphics |
*Windows and Graphics |
| Ask Brian Dunn and Mike Hore for their OS-independent interface |
**Ask Brian Dunn and Mike Hore for their OS-independent interface |
| |
**use the Foreign Language Interface to make X-Windows support |
| |
|
| *Program Development Environment |
*Program Development Environment |
| Issues: Convenience, portability across plattforms, compatibility with |
Issues: Convenience, portability across plattforms, compatibility with |
| existing tools (Emacs, F-PC) |
existing tools (Emacs, F-PC) |
| |
** Decompiler and Debugger |
| |
need debugging |
| |
**readline |
| |
Use the GNU readline package for convenient line editing |
| |
** emacs support |
| |
can be improved |
| **prefix file generator |
**prefix file generator |
| A tool for generating a prefix file for a program that explains in |
A tool for generating a prefix file for a program that explains in |
| what way the program conforms to ANSI and contains Forth definitions |
what way the program conforms to ANSI (i.e., which wordsets are used) |
| for the simple non-ANSI words. |
and contains Forth definitions for the simple non-ANSI words. |
| |
** rightcase |
| |
A tool that converts all uses of words in a source text to the exact |
| |
case of the definition. There's something like this out there on the |
| |
net (Joerg Plewe has posted a reference), but I think a program that |
| |
wires itself into the compiler (like etags.fs) is harder to fool by |
| |
search order tricks etc. |
| |
|
| *Object-Oriented Extensions |
*Object-Oriented Extensions |
| John Hayes (?) has a portable package |
John Hayes has a portable package |
| Ask Phil Burke (phil@ntg.com), if he wants to contribute ODE |
|
| |
|
| *Documentation |
*Documentation |
| A texinfo file |
A texinfo file |
| |
|
| **glossaries of all wordsets. |
**glossaries of all wordsets. |
| ***Tool to generate glossaries benschop |
*** Inclusion of stack comments, glossary comments, and wordset comments |
| ***Inclusion of glossary comments in all source files. |
in all source files. |
| |
|
| *Distribution and Announcements |
*Distribution and Announcements |
| ** Ask the FSF, if they want to distribute it |
** add copyright notices to all the source files |
| |
** add a package target to the Makefile |
| ** Write articles for (general-purpose) magazines |
** Write articles for (general-purpose) magazines |