version 1.2, 1994/10/03 18:24:00
|
version 1.7, 1996/11/11 16:59:15
|
Line 13 direct/indirect, NEXT splitting, keeping
|
Line 13 direct/indirect, NEXT splitting, keeping
|
**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. I.e., on installation all combinations of options |
configuration. I.e., on installation all combinations of options |
should be measured and the fastest chosen. Knowing OS and architecture |
should be measured and the fastest chosen. Knowing OS and architecture |
is not enough, the best otions depend more on the processor and the |
is not enough, the best options depend more on the processor and the |
compiler version. |
compiler version. |
|
|
* ANSI Forth |
* ANSI Forth |
Add the remaining words |
Add the remaining words |
|
|
* 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 |
**Stack Checking using the MMU where the OS makes it possible. |
**Stack Checking using the MMU where the OS makes it possible. |
|
|
Line 44 Use gcc-generated assembly on machines w
|
Line 37 Use gcc-generated assembly on machines w
|
processors supported by gcc |
processors supported by gcc |
|
|
*Foreign Language Interface |
*Foreign Language Interface |
If anybody wants to do this, mail me |
If anybody wants to do this, take a look at |
(anton@mips.complang.tuwien.ac.at). I have given some thought to this |
ftp://ftp.complang.tuwien.ac.at/pub/forth/foreign.ds |
and will type in my notes if you are interested. |
Some of the problems are discussed there, |
**C |
**C |
|
Stuart Ramsden is doing a bit here. |
**FORTRAN |
**FORTRAN |
**C++ |
**C++ |
|
|
Line 60 Issues: Convenience, portability across
|
Line 54 Issues: Convenience, portability across
|
existing tools (Emacs, F-PC) |
existing tools (Emacs, F-PC) |
** Decompiler and Debugger |
** Decompiler and Debugger |
need debugging |
need debugging |
**readline |
** Profiling |
Use the GNU readline package for convenient line editing |
The way this (and perhaps also debugging features) could work is this: |
|
On compilation all code fields are remembered somewhere (using a |
|
special hook like etags). If the user now decides to profile part of |
|
the code, the corresponding code fields are replaced by fields |
|
pointing to code that performs the measurement (or whatever else is |
|
intended). |
** emacs support |
** emacs support |
can be improved |
can be improved |
**prefix file generator |
**prefix file generator |
A tool for generating a prefix file for a program that explains in |
extend or complement ans-report.fs to provide Forth definitions for |
what way the program conforms to ANSI (i.e., which wordsets are used) |
the simple non-ANSI words. |
and contains Forth definitions for the simple non-ANSI words. |
|
** rightcase |
** rightcase |
A tool that converts all uses of words in a source text to the exact |
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 |
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 |
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 |
wires itself into the compiler (like etags.fs) is harder to fool by |
search order tricks etc. |
search order tricks etc. EVALUATE is a problem. |
|
|
*Object-Oriented Extensions |
*Object-Oriented Extensions |
John Hayes has a portable package |
John Hayes has a portable package |
|
|
*Documentation |
*Documentation |
A texinfo file |
A texinfo file |
|
|
**glossaries of all wordsets. |
**glossaries of all wordsets. |
*** Inclusion of stack comments, glossary comments, and wordset comments |
*** Inclusion of stack comments, glossary comments, and wordset comments |
in all source files. |
in all source files. |
|
|
* Distribution and Announcements |
* Distribution and Announcements |
** 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 |