[gforth] / gforth / ToDo  

gforth: gforth/ToDo


1 : anton 1.2 -*- outline -*-
2 : anton 1.1
3 : anton 1.2 This file describes all the things left to do on GNU Forth. The list
4 :     is not complete, so you should add topics you miss or refine existing
5 :     topics. If you are working on a topic, add your name to the right of
6 :     the topic. If you have completed the work, remove the topic.
7 :    
8 : anton 1.1 This an emacs outline. Use '*' to create topics.
9 :    
10 :     *The Engine
11 :     **measure the effect of some variations on different machines:
12 :     direct/indirect, NEXT splitting, keeping the TOSses in variables
13 :     **make it easy to put the right variation for each processor into the
14 : anton 1.2 configuration. I.e., on installation all combinations of options
15 :     should be measured and the fastest chosen. Knowing OS and architecture
16 : anton 1.4 is not enough, the best options depend more on the processor and the
17 : anton 1.2 compiler version.
18 : anton 1.1
19 :     * ANSI Forth
20 : anton 1.2 Add the remaining words
21 :    
22 : anton 1.1 *Run-time System
23 :     **Gender-independent image file format and loader
24 : anton 1.2 **Stack Checking using the MMU where the OS makes it possible.
25 : anton 1.1
26 :     *Porting/Portability
27 :     ** Machines/OSs
28 : anton 1.2 VMS (VAX,AXP)
29 :     DOS 8088 (16-bit or 32-bit? Note: there are no far pointers in gforth,
30 :     so 16-bit means 64k max.)
31 : anton 1.1 Windows
32 :     OS/2
33 :     Mac
34 :     Atari
35 :     Amiga
36 : anton 1.2 Use gcc-generated assembly on machines without gcc, but with
37 :     processors supported by gcc
38 : anton 1.1
39 :     *Foreign Language Interface
40 : anton 1.4 If anybody wants to do this, take a look at
41 :     ftp://ftp.complang.tuwien.ac.at/pub/forth/foreign.ds
42 :     Some of the problems are discussed there,
43 : anton 1.1 **C
44 : anton 1.4 Stuart Ramsden is doing a bit here.
45 : anton 1.1 **FORTRAN
46 :     **C++
47 :    
48 :     *Windows and Graphics
49 : anton 1.2 **Ask Brian Dunn and Mike Hore for their OS-independent interface
50 :     **use the Foreign Language Interface to make X-Windows support
51 : anton 1.1
52 :     *Program Development Environment
53 :     Issues: Convenience, portability across plattforms, compatibility with
54 :     existing tools (Emacs, F-PC)
55 : anton 1.2 ** Decompiler and Debugger
56 :     need debugging
57 : anton 1.4 ** Profiling
58 :     The way this (and perhaps also debugging features) could work is this:
59 :     On compilation all code fields are remembered somewhere (using a
60 :     special hook like etags). If the user now decides to profile part of
61 :     the code, the corresponding code fields are replaced by fields
62 :     pointing to code that performs the measurement (or whatever else is
63 :     intended).
64 : anton 1.2 ** emacs support
65 :     can be improved
66 : anton 1.1 **prefix file generator
67 : anton 1.7 extend or complement ans-report.fs to provide Forth definitions for
68 :     the simple non-ANSI words.
69 : anton 1.2 ** rightcase
70 :     A tool that converts all uses of words in a source text to the exact
71 :     case of the definition. There's something like this out there on the
72 :     net (Joerg Plewe has posted a reference), but I think a program that
73 :     wires itself into the compiler (like etags.fs) is harder to fool by
74 : anton 1.6 search order tricks etc. EVALUATE is a problem.
75 : anton 1.1
76 :     *Object-Oriented Extensions
77 : anton 1.2 John Hayes has a portable package
78 : anton 1.1
79 :     *Documentation
80 :     A texinfo file
81 :     **glossaries of all wordsets.
82 : anton 1.2 *** Inclusion of stack comments, glossary comments, and wordset comments
83 :     in all source files.
84 : anton 1.1
85 : anton 1.2 * Distribution and Announcements
86 : anton 1.1 ** Write articles for (general-purpose) magazines

CVS Admin

Powered by ViewCVS 1.0-dev
(Powered by ViewCVS)

ViewCVS and CVS Help