comparison etc/tasks.texi @ 23610:73c884a6f03c

*** empty log message ***
author Richard M. Stallman <rms@gnu.org>
date Sun, 01 Nov 1998 17:47:52 +0000
parents 10f889f1c168
children 43fd01db076b
comparison
equal deleted inserted replaced
23609:133e5c5c2e64 23610:73c884a6f03c
1 \input texinfo @c -*-texinfo-*- 1 \input texinfo @c -*-texinfo-*-
2 @c %**start of header 2 @c %**start of header
3 @setfilename tasks.info 3 @setfilename tasks.info
4 @settitle GNU Task List 4 @settitle GNU Task List
5 @c This date is automagically updated when you save this file: 5 @c This date is automagically updated when you save this file:
6 @set lastupdate September 22, 1998 6 @set lastupdate October 27, 1998
7 @c %**end of header 7 @c %**end of header
8 8
9 @setchapternewpage off 9 @setchapternewpage off
10 10
11 @titlepage 11 @titlepage
30 * Kernel Projects:: 30 * Kernel Projects::
31 * Extensions:: 31 * Extensions::
32 * X Windows Projects:: 32 * X Windows Projects::
33 * Encryption Projects:: 33 * Encryption Projects::
34 * Other Projects:: 34 * Other Projects::
35 * Compilers:: 35 * Languages::
36 * Games and Recreations:: 36 * Games and Recreations::
37 @end menu 37 @end menu
38 38
39 @node Intro 39 @node Intro
40 @chapter About the GNU Task List 40 @chapter About the GNU Task List
113 If you are a Scheme fan, you can help develop Guile. Please have a look 113 If you are a Scheme fan, you can help develop Guile. Please have a look
114 at the URL @uref{http://www.gnu.org/software/guile/guile.html} 114 at the URL @uref{http://www.gnu.org/software/guile/guile.html}
115 and then contact the Guile developers at @email{guile@@gnu.org}. 115 and then contact the Guile developers at @email{guile@@gnu.org}.
116 116
117 @item 117 @item
118 Help develop XmHTML. 118 Help develop XmHTML. See @uref{http://www.xs4all.nl/~ripley/XmHTML/}.
119 119
120 @item 120 @item
121 Help develop software to emulate Windows NT on top of GNU systems. 121 Help develop software to emulate Windows NT on top of GNU systems.
122 For example, you could help work on Willows Twin. 122 For example, you could help work on Willows Twin.
123 See @uref{http://www.willows.com/}.
123 124
124 @item 125 @item
125 Implement the Kermit data transfer protocol. (See below.) 126 Implement the Kermit data transfer protocol. (See below.)
126 127
127 @ignore This is being done (Harmony) 128 @ignore This is being done (Harmony)
138 This is leading to a serious problem, and a free replacement for Qt is 139 This is leading to a serious problem, and a free replacement for Qt is
139 the only solution. Hence the high degree of urgency of this project. 140 the only solution. Hence the high degree of urgency of this project.
140 @end ignore 141 @end ignore
141 142
142 @item 143 @item
143 Develop a free replacement for a semi-free program such as Xv or POV.
144 These semi-free programs are less restricted than typical proprietary
145 programs, but too restricted to be part of any free operating system.
146
147 @item
148 Develop a substitute, which runs on GNU systems, for some very popular 144 Develop a substitute, which runs on GNU systems, for some very popular
149 or very important application that many non-programmers use on Windows, 145 or very important application that many non-programmers use on Windows,
150 and which has no comparable free equivalent now. 146 and which has no comparable free equivalent now.
151 @end itemize 147 @end itemize
152 148
155 151
156 We very urgently need documentation for many existing parts of the 152 We very urgently need documentation for many existing parts of the
157 system. 153 system.
158 154
159 Note that there are proprietary manuals for many of these topics, but 155 Note that there are proprietary manuals for many of these topics, but
160 proprietary manuals do not count, because we are not free to copy and 156 proprietary manuals do not count, for the same reason proprietary
161 modify them along with the software they document. For this reason, 157 software does not count: we are not free to copy and modify them.
162 we do not recommend any non-free manuals. 158 We do not recommend any non-free materials as documentation.
163 159
164 @itemize @bullet 160 @itemize @bullet
161 @item
162 A unified manual for La@TeX{}. (Existing documentation is non-free.)
163
164 @item
165 A tutorial introduction to Midnight Commander.
166
167 @item
168 A manual for GNU SQL.
169
170 @item
171 A thorough manual for RCS.
172
173 @item
174 A reference manual for Mach.
175
176 @item
177 A reference manual for the GNU Hurd features in GNU libc.
178
179 @item
180 A manual for writing Hurd servers.
181
165 @item 182 @item
166 A C reference manual. (RMS made a try at one, which you could start 183 A C reference manual. (RMS made a try at one, which you could start
167 with). 184 with).
168 185
169 @item 186 @item
170 Reference manuals for C++, Pascal, Fortran 77, and Java. 187 Reference manuals for C++, Objective C, Pascal, Fortran 77, and Java.
188
189 @item
190 A tutorial manual for the C++ STL (standard template library).
191
192 @item
193 GNU Objective-C Runtime Library Manual; this would be a reference manual
194 for the runtime library functions, structures, and classes. Some work
195 has been done on this job.
196
197 @item
198 Manuals for GNUstep: developer tutorial, developer programming manual,
199 developer reference manual, and user manual.
171 200
172 @item 201 @item
173 A manual for Ghostscript. 202 A manual for Ghostscript.
174 203
175 @item 204 @item
193 @item 222 @item
194 A book on how GCC works and why various machine descriptions 223 A book on how GCC works and why various machine descriptions
195 are written as they are. 224 are written as they are.
196 225
197 @item 226 @item
198 A manual for programming X-window applications. 227 A manual for programming applications for X11.
199 228
200 @item 229 @item
201 Manuals for various X window managers. 230 Manuals for various X window managers.
202 231
203 @item 232 @item
319 @itemize @bullet 348 @itemize @bullet
320 @item 349 @item
321 An emulator for Macintosh graphics calls on top of X Windows. 350 An emulator for Macintosh graphics calls on top of X Windows.
322 351
323 @item 352 @item
353 A package that emulates the API of Visual C++, but operates on top of
354 X11. It need not match the screen appearance of Visual C++. Instead,
355 it would be best to use GTK, so as to give coherence with GNOME.
356
357 @item
358 A compatible replacement for Visual Basic, running on top of X11.
359 It need not match the screen appearance of Visual C++. Instead,
360 it would be best to use GTK, so as to give coherence with GNOME.
361
362 @item
324 A music playing and editing system. This should work with LilyPond, a 363 A music playing and editing system. This should work with LilyPond, a
325 GNU program for music typesetting. 364 GNU program for music typesetting.
326 365
327 @item 366 @item
367 An ear-training program for students of music.
368
369 @item
328 An ephemeris program to replace xephem (which is, alas, too restricted 370 An ephemeris program to replace xephem (which is, alas, too restricted
329 to qualify as free software). 371 to qualify as free software).
330 372
331 @item 373 @item
332 A program to edit dance notation (such as labanotation) and display 374 A program to edit dance notation (such as labanotation) and display
338 @item 380 @item
339 A program to display and edit Hypercard stacks. 381 A program to display and edit Hypercard stacks.
340 382
341 @item 383 @item
342 A program for graphic morphing of scanned photographs. 384 A program for graphic morphing of scanned photographs.
385
386 @item
387 Software for designing and printing business cards.
343 @end itemize 388 @end itemize
344 389
345 @node Encryption Projects 390 @node Encryption Projects
346 @chapter Encryption Projects 391 @chapter Encryption Projects
347 392
356 encryption, not the RSA algorithm, because the Diffie-Helman patent in 401 encryption, not the RSA algorithm, because the Diffie-Helman patent in
357 the US expired in 1997. This library can probably be developed from 402 the US expired in 1997. This library can probably be developed from
358 the code for the GNU Privacy Guard (now in development). 403 the code for the GNU Privacy Guard (now in development).
359 404
360 @item 405 @item
361 A free secure telnet program more or less like ssh/sshd. Since this
362 requires a public key encryption algorithm, it should be based
363 on the library above.
364
365 This program should follow the draft standard for ssh. As always, it
366 cannot implement the RSA algorithm, but must instead support the
367 alternatives that will be patent-free in late 1997. It cannot support
368 IDEA, but can use triple-DES and/or Blowfish or other non-patented
369 alternatives.
370
371 @item
372 Free software for doing secure commercial transactions on the web. 406 Free software for doing secure commercial transactions on the web.
373 This too needs public key encryption. 407 This too needs public key encryption.
374 @end itemize 408 @end itemize
375 409
376 A free replacement for PGP is no longer listed here because the GNU 410 A free replacement for PGP is no longer listed here because the GNU
381 415
382 If you think of others that should be added, please 416 If you think of others that should be added, please
383 send them to @email{gnu@@gnu.org}. 417 send them to @email{gnu@@gnu.org}.
384 418
385 @itemize @bullet 419 @itemize @bullet
386
387 @item
388 A program to reformat HTML source to make it easier to read as HTML.
389
390 @item 420 @item
391 A simple PC BIOS. On most new PCs, the BIOS is stored in writable 421 A simple PC BIOS. On most new PCs, the BIOS is stored in writable
392 memory (misleadingly known as ``flash ROM''). In order to have a wholly 422 memory (misleadingly known as ``flash ROM''). In order to have a wholly
393 free system on these PCs, we need a free BIOS. 423 free system on these PCs, we need a free BIOS.
394 424
419 alas, not free software). 449 alas, not free software).
420 450
421 @item 451 @item
422 A free replacement for Glimpse, which is not free software. 452 A free replacement for Glimpse, which is not free software.
423 453
454 @item
455 Software for making "slide" presentations. It need not be compatible
456 with the popular proprietary software to do this job, but it should do
457 the same job.
458
459 @item
460 Software for desktop publishing. We are extending Emacs into a WYSIWYG
461 word processor, to handle primarily linear text; what this item proposes
462 is software focused on page layout.
463
424 @item 464 @item
425 A program to typeset C code for printing, to make it easier to read on 465 A program to typeset C code for printing, to make it easier to read on
426 paper. For ideas on what to do, see the book, 466 paper. For ideas on what to do, see the book,
427 467
428 @display 468 @display
430 Ronald M. Baecker and Aaron Marcus, 470 Ronald M. Baecker and Aaron Marcus,
431 Addison-Wesley, ISBN 0-201-10745-7 471 Addison-Wesley, ISBN 0-201-10745-7
432 @end display 472 @end display
433 473
434 But you don't have to do exactly what they propose. 474 But you don't have to do exactly what they propose.
475
476 @item
477 A program to reformat HTML source to make it easier to read as HTML.
435 478
436 @ignore 479 @ignore
437 @c This is now being worked on -- rms, 22 June 1998 480 @c This is now being worked on -- rms, 22 June 1998
438 @item 481 @item
439 A program to convert Microsoft Word documents to text/enriched, TeX, 482 A program to convert Microsoft Word documents to text/enriched, TeX,
513 556
514 @item 557 @item
515 Grammar and style checking programs. 558 Grammar and style checking programs.
516 559
517 @item 560 @item
561 A program to calculate nutritional information from recipes.
562
563 There is a free (unambiguously public domain) database of nutritional
564 information compiled by the USDA at
565 @url{http://www.nal.usda.gov/fnic/foodcomp}.
566
567 @item
518 A translator from Scheme to C. 568 A translator from Scheme to C.
519 569
520 @item 570 @item
521 A fast emulator for the i386 which works by translating 571 A fast emulator for the i386 which works by translating
522 machine instructions into the machine language of the host machine. 572 machine instructions into the machine language of the host machine.
546 @item 596 @item
547 A program to receive data from a serial-line tap to facilitate the 597 A program to receive data from a serial-line tap to facilitate the
548 reverse-engineering of communication protocols. 598 reverse-engineering of communication protocols.
549 @end itemize 599 @end itemize
550 600
551 @node Compilers 601 @node Languages
552 @chapter Compilers for Other Batch Languages 602 @chapter Programming Languages
553 603
554 Volunteers are needed to write parsers/front ends for languages such as 604 Volunteers are needed to write parsers/front ends for languages such as
555 Algol 60, Algol 68, PL/I, Cobol, Fortran 90, or whatever, to be 605 Algol 60, Algol 68, PL/I, Cobol, Fortran 90, or whatever, to be
556 used with the code generation phases of the GNU C compiler. 606 used with the code generation phases of the GNU C compiler.
557 607
561 611
562 @example 612 @example
563 finger -l fortran@@gnu.org 613 finger -l fortran@@gnu.org
564 @end example 614 @end example
565 615
616 We would like to have translators from various languages into Scheme.
617 These languages include TCL, Python, Perl, Java and Rexx.
618
619 We would like to have an implementation of Clipper, perhaps a GCC front
620 end, and perhaps a translator into Scheme.
621
566 @node Games and Recreations 622 @node Games and Recreations
567 @chapter Games and Recreations 623 @chapter Games and Recreations
568 624
569 Video-oriented games that work with the X window system. 625 Video-oriented games that work with the X window system.
570 626
576 An ``empire builder'' system that makes it easy to write various kinds of 632 An ``empire builder'' system that makes it easy to write various kinds of
577 simulation games. 633 simulation games.
578 634
579 @item 635 @item
580 Improve GnuGo, which is not yet very sophisticated. 636 Improve GnuGo, which is not yet very sophisticated.
637
638 @item
639 Network servers and clients for board and card games for which such
640 software does not yet exist.
581 641
582 @item 642 @item
583 A Hierarchical Task Network package which can be used 643 A Hierarchical Task Network package which can be used
584 to program play the computer's side in various strategic games. 644 to program play the computer's side in various strategic games.
585 645