Annotation of gforth/ToDo, revision 1.10

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

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>