File:  [gforth] / gforth / ToDo
Revision 1.11: download - view: text, annotated - select for diffs
Sun Mar 9 12:54:32 2003 UTC (20 years, 9 months ago) by anton
Branches: MAIN
CVS tags: HEAD
added copyright messages to a lot of files
removed some obsolete or non-source files

    1: -*- outline -*-
    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.
    8: This an emacs outline. Use '*' to create topics.
   10: * "DOS" Distribution
   11: eventually convert all text files LF -> CR LF
   12: check on 8.3 filenames?!
   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
   18: configuration. I.e., on installation all combinations of options
   19: should be measured and the fastest chosen. Knowing OS and architecture
   20: is not enough, the best options depend more on the processor and the
   21: compiler version.
   23: * ANSI Forth
   24: Add the remaining words
   26: *Run-time System
   27: **Gender-independent image file format and loader
   28: **Stack Checking using the MMU where the OS makes it possible.
   30: *Porting/Portability
   31: ** Machines/OSs
   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.)
   35: Windows
   36: OS/2
   37: Mac
   38: Atari
   39: Amiga
   40: Use gcc-generated assembly on machines without gcc, but with
   41: processors supported by gcc
   43: *Foreign Language Interface
   44: If anybody wants to do this, take a look at
   46: Some of the problems are discussed there,
   47: **C
   48: Stuart Ramsden is doing a bit here.
   49: **FORTRAN
   50: **C++
   52: *Windows and Graphics
   53: **Ask Brian Dunn and Mike Hore for their OS-independent interface
   54: **use the Foreign Language Interface to make X-Windows support
   56: *Program Development Environment
   57: Issues: Convenience, portability across plattforms, compatibility with
   58: existing tools (Emacs, F-PC)
   59: ** Decompiler and Debugger
   60: need debugging
   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).
   68: ** emacs support
   69: can be improved
   70: **prefix file generator
   71: extend or complement ans-report.fs to provide Forth definitions for
   72: the simple non-ANSI words.
   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
   78: search order tricks etc. EVALUATE is a problem.
   80: *Documentation (Neal Crook, is working on this)
   81: A texinfo file
   82: add more about internals (c primitives, creation of engine, etc.)
   83: **glossaries of all wordsets.
   84: *** Inclusion of stack comments, glossary comments, and wordset comments
   85: in all source files.
   87: * Distribution and Announcements
   88: ** Write articles for (general-purpose) magazines
   90: -----
   91: Copyright (C) 1995,1996,1997,1999 Free Software Foundation, Inc.
   93: This file is part of Gforth.
   95: Gforth is free software; you can redistribute it and/or
   96: modify it under the terms of the GNU General Public License
   97: as published by the Free Software Foundation; either version 2
   98: of the License, or (at your option) any later version.
  100: This program is distributed in the hope that it will be useful,
  101: but WITHOUT ANY WARRANTY; without even the implied warranty of
  103: GNU General Public License for more details.
  105: You should have received a copy of the GNU General Public License
  106: along with this program; if not, write to the Free Software
  107: Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.

FreeBSD-CVSweb <>