*** empty log message ***
[bpt/emacs.git] / etc / tasks.texi
CommitLineData
bb5d4e1a
RS
1\input texinfo @c -*-texinfo-*-
2@c %**start of header
3@setfilename tasks.info
4@settitle GNU Task List
fff05d88 5@c This date is automagically updated when you save this file:
8d6ebf2e 6@set lastupdate August 29, 1999
bb5d4e1a
RS
7@c %**end of header
8
9@setchapternewpage off
10
bb5d4e1a
RS
11@titlepage
12@title GNU Task List
d6eb79ad 13@author Free Software Foundation
bb5d4e1a 14@author last updated @value{lastupdate}
bb5d4e1a
RS
15@end titlepage
16
17@ifinfo
55616d18 18@node Top, Intro, (dir), (dir)
d9e60f52 19@top GNU Task List
bb5d4e1a 20
d6eb79ad
RS
21This file is updated automatically from @file{tasks.texi}, which was
22last updated on @value{lastupdate}.
bb5d4e1a
RS
23@end ifinfo
24
bb5d4e1a 25@menu
6af1f598
JWI
26* Intro::
27* Highest Priority::
28* Documentation::
29* Unix-Related Projects::
30* Kernel Projects::
31* Extensions::
32* X Windows Projects::
33* Network Projects::
34* Encryption Projects::
35* Other Projects::
36* Languages::
37* Games and Recreations::
bb5d4e1a
RS
38@end menu
39
6af1f598 40@node Intro, Highest Priority, Top, Top
c05524ad
RS
41@chapter About the GNU Task List
42
7c4978a8 43If you did not obtain this file directly from the GNU project and
9459fac1
JG
44recently, please check for a newer version. You can ftp the task list
45from any GNU FTP host in directory @file{/pub/gnu/tasks/}. The task
7c4978a8 46list is available there in several different formats: @file{tasks.text},
541d49e1
JG
47@file{tasks.texi}, @file{tasks.info}, and @file{tasks.dvi}. The GNU
48HURD task list is also there in file @file{tasks.hurd}.
49@c to fix an overfill, join the paragraphs -len
7c4978a8 50The task list is also available on the GNU World Wide Web server:
fff05d88 51@uref{http://www.gnu.org/prep/tasks_toc.html}.
c05524ad 52
fff05d88 53If you start working steadily on a project, please let @email{gvc@@gnu.org}
d9e60f52
DM
54know. We might have information that could help you; we'd also like to
55send you the GNU coding standards.
bb5d4e1a 56
c05524ad
RS
57Because of the natural tendency for most volunteers to write programming
58tools or programming languages, we have a comparative shortage of
59applications useful for non-programmer users. Therefore, we ask you to
60consider writing such a program.
bb5d4e1a 61
d17fd035
RS
62Typically, a new program that does a completely new job advances
63the GNU project, and the free software community, more than an
64improvement to an existing program.
65
66Typically, new features or new programs advance the free software
67community more, in the long run, than porting existing programs. One
68reason is that portable new features and programs benefit people on many
69platforms, not just one. At the same time, there tend to be many
70volunteers for porting---so your help will be more valuable in other
71areas, where volunteers are more scarce.
72
73Typically, it is more useful to extend a program in functionality than
74to improve performance. Users who use the new functionality will
75appreciate it very much, if they use it; but even when they benefit from
76a performance improvement, they may not consider it very important.
bb5d4e1a 77
6af1f598 78@node Highest Priority, Documentation, Intro, Top
7c4978a8
RS
79@chapter Highest Priority
80
81This task list mentions a large number of tasks that would be more or
82less useful. With luck, at least one of them will inspire you to start
83writing. It's better for you to work on any task that inspires you than
84not write free software at all.
85
86But if you would like to work on what we need most, here is a list of
87high priority projects.
88
89@itemize @bullet
90@item
632c6364 91If you are good at writing documentation, please do that.
7c4978a8
RS
92
93@item
94If you are very good at C programming and interested in kernels, you can
541d49e1 95help develop the GNU HURD, the kernel for the GNU system. Please have a
fff05d88 96look at @uref{http://www.gnu.org/software/hurd/hurd.html}, and
541d49e1
JG
97then get a copy of the latest HURD task list from:
98
99@itemize @bullet
100
101@item
fff05d88 102@uref{http://www.gnu.org/prep/tasks.hurd.html}, via the World Wide
541d49e1
JG
103Web.
104
105@item
fff05d88 106@uref{ftp://ftp.gnu.org/pub/gnu/tasks/tasks.hurd}, via anonymous FTP.
541d49e1
JG
107
108@item
fff05d88 109@email{gnu@@gnu.org} via e-mail.
541d49e1
JG
110
111@end itemize
7c4978a8
RS
112
113@item
541d49e1 114If you are a Scheme fan, you can help develop Guile. Please have a look
fff05d88
RS
115at the URL @uref{http://www.gnu.org/software/guile/guile.html}
116and then contact the Guile developers at @email{guile@@gnu.org}.
7c4978a8 117
9dde84c6
RS
118@item
119A package to convert programs written using MS Access into Scheme,
120making use of a free data base system and the GTK toolkit.
121
7c4978a8 122@item
0f82d9d8 123Help develop XmHTML. See @uref{http://www.xs4all.nl/~ripley/XmHTML/}.
7c4978a8
RS
124
125@item
fff05d88
RS
126Help develop software to emulate Windows NT on top of GNU systems.
127For example, you could help work on Willows Twin.
0f82d9d8 128See @uref{http://www.willows.com/}.
7c4978a8 129
f00afe93
RS
130@ignore The Kermit developers say they will provide a free program
131to do this.
7c4978a8
RS
132@item
133Implement the Kermit data transfer protocol. (See below.)
f00afe93 134@end ignore
7c4978a8 135
fff05d88 136@ignore This is being done (Harmony)
7c4978a8 137@item
632c6364
RS
138Develop a free compatible replacement for Qt, a GUI toolkit library. Qt
139is not free software, because users are prohibited from distributing
140modified versions. Thus, Qt cannot be included in a free operating
141system (adding it would make the system as a whole non-free).
142
143But some developers are writing free applications that use Qt and cannot
144run without it. These programs, although free software, are useless for
145free operating systems because there is no way to make them run.
146
147This is leading to a serious problem, and a free replacement for Qt is
148the only solution. Hence the high degree of urgency of this project.
fff05d88
RS
149@end ignore
150
7c4978a8
RS
151@item
152Develop a substitute, which runs on GNU systems, for some very popular
153or very important application that many non-programmers use on Windows,
154and which has no comparable free equivalent now.
155@end itemize
156
6af1f598 157@node Documentation, Unix-Related Projects, Highest Priority, Top
bb5d4e1a
RS
158@chapter Documentation
159
fff05d88
RS
160We very urgently need documentation for many existing parts of the
161system.
162
163Note that there are proprietary manuals for many of these topics, but
0f82d9d8
RS
164proprietary manuals do not count, for the same reason proprietary
165software does not count: we are not free to copy and modify them.
166We do not recommend any non-free materials as documentation.
bb5d4e1a
RS
167
168@itemize @bullet
242621f3 169@item
24fad2a2 170A manual for libstdc++.
242621f3 171
0f82d9d8
RS
172@item
173A unified manual for La@TeX{}. (Existing documentation is non-free.)
174
175@item
176A tutorial introduction to Midnight Commander.
177
178@item
179A manual for GNU SQL.
180
181@item
182A thorough manual for RCS.
183
184@item
185A reference manual for Mach.
186
187@item
188A reference manual for the GNU Hurd features in GNU libc.
189
190@item
191A manual for writing Hurd servers.
192
fff05d88 193@item
0f82d9d8
RS
194Reference manuals for C++, Objective C, Pascal, Fortran 77, and Java.
195
196@item
197A tutorial manual for the C++ STL (standard template library).
198
3c307b90 199@item
1eb87eaf 200A tutorial manual for Gforth.
3c307b90 201
0f82d9d8
RS
202@item
203GNU Objective-C Runtime Library Manual; this would be a reference manual
204for the runtime library functions, structures, and classes. Some work
205has been done on this job.
206
207@item
208Manuals for GNUstep: developer tutorial, developer programming manual,
209developer reference manual, and user manual.
fff05d88 210
bb5d4e1a
RS
211@item
212A manual for Ghostscript.
c05524ad 213
c05524ad
RS
214@item
215A manual for TCSH.
bb5d4e1a
RS
216
217@item
dc32c4fa
RS
218A coherent free reference manual for Perl. Most of the Perl on-line
219reference documentation can be used as a starting point, but work is
220needed to weld them together into a coherent manual.
bb5d4e1a 221
bb5d4e1a 222@item
fff05d88
RS
223A good free Perl language tutorial introduction. The existing Perl
224introductions are published with restrictions on copying and
225modification, so that they cannot be part of a GNU system.
226
227@item
228A manual for PIC (the graphics formatting language).
bb5d4e1a
RS
229
230@item
231A book on how GCC works and why various machine descriptions
232are written as they are.
233
234@item
0f82d9d8 235A manual for programming applications for X11.
bb5d4e1a
RS
236
237@item
238Manuals for various X window managers.
239
240@item
261597d4 241Reference cards for those manuals that don't have them: C
c05524ad 242Compiler, Make, Texinfo, Termcap, and maybe the C Library.
bb5d4e1a
RS
243
244@item
261597d4 245Many utilities need documentation, including @code{grep} and others.
bb5d4e1a
RS
246@end itemize
247
6af1f598 248@node Unix-Related Projects, Kernel Projects, Documentation, Top
d9e60f52 249@chapter Unix-Related Projects
bb5d4e1a 250
d9e60f52 251@itemize @bullet
5aba97f2 252@ignore
bb5d4e1a
RS
253@item
254Modify the GNU @code{dc} program to use the math routines of GNU
255@code{bc}.
5aba97f2 256@end ignore
bb5d4e1a 257
bb5d4e1a 258@item
fff05d88
RS
259Less urgent: make a replacement for the ``writer's workbench'' program
260@code{style}, or something to do the same kind of job. Compatibility
f5c525cd 261with Unix is not especially important for this program.
bb5d4e1a
RS
262@end itemize
263
6af1f598 264@node Kernel Projects, Extensions, Unix-Related Projects, Top
d9e60f52 265@chapter Kernel-Related Projects
bb5d4e1a 266
d9e60f52 267@itemize @bullet
bb5d4e1a 268@item
5aba97f2 269An over-the-ethernet debugger stub that will allow the kernel to be
bb5d4e1a
RS
270debugged from GDB running on another machine.
271
5aba97f2
RS
272This stub needs its own self-contained implementation of all protocols
273to be used, since the GNU system will use user processes to implement
274all but the lowest levels, and the stub won't be able to use those
275processes. If a simple self-contained implementation of IP and TCP is
276impractical, it might be necessary to design a new, simple protocol
277based directly on ethernet. It's not crucial to support high speed or
278communicating across gateways.
279
280It might be possible to use the Mach ethernet driver code, but it would
281need some changes.
282
bb5d4e1a
RS
283@item
284A shared memory X11 server to run under MACH is very desirable. The
285machine specific parts should be kept well separated.
c05524ad
RS
286
287@item
288An implementation of CIFS, the ``Common Internet File System,'' for the
289HURD. This protocol is an offshoot of SMB.
c6d6677e
RS
290
291@item
292Support (in Linux?) for dumping the non-textual contents of an SVGA
293console.
bb5d4e1a
RS
294@end itemize
295
6af1f598 296@node Extensions, X Windows Projects, Kernel Projects, Top
d9e60f52 297@chapter Extensions to Existing GNU Software
bb5d4e1a 298
d9e60f52 299@itemize @bullet
bb5d4e1a 300@item
d9e60f52
DM
301Enhance GCC. See files @file{PROJECTS} and @file{PROBLEMS} in the GCC
302distribution.
bb5d4e1a 303
a81ed99e
RS
304@item
305Interface GDB to Guile, so that users can write debugging commands in
306Scheme. This would also make it possible to write, in Scheme, a
fff05d88
RS
307graphical interface that uses GTK and is tightly integrated into GDB.
308
309@item
310Extend Octave to support programs that were written
311to run on Khoros.
a81ed99e 312
2eebaacd 313@item
d71de6f9
JWI
314Rewrite Automake in Scheme, so it can run in Guile. Right now it is
315written in Perl. There are also other programs, not terribly long,
316which we would also like to have rewritten in Scheme.
fff05d88 317
b6a061a8
RS
318@item
319Finish the partially-implemented C interpreter project.
2eebaacd
RS
320
321@item
fff05d88 322Help with the development of GNUstep, a GNU implementation of the
2eebaacd
RS
323OpenStep specification.
324
5aba97f2
RS
325@item
326Add features to GNU Make to record the precise rule with which each file
327was last recompiled; then recompile any file if its rule in the makefile
328has changed.
329
bb5d4e1a
RS
330@item
331Add a few features to GNU @code{diff}, such as handling large input
332files without reading entire files into core.
333
bb5d4e1a
RS
334@item
335An @code{nroff} macro package to simplify @code{texi2roff}.
336
337@item
338A queueing system for the mailer Smail that groups pending work by
339destination rather than by original message. This makes it possible
340to schedule retries coherently for each destination. Talk to
fff05d88 341@email{tron@@veritas.com} about this.
bb5d4e1a 342
5aba97f2 343Smail also needs a new chief maintainer.
bb5d4e1a 344
5aba97f2
RS
345@item
346Enhanced cross-reference browsing tools. (We now have something at
347about the level of @code{cxref}.) We also could use something like
348@code{ctrace}. (Some people are now working on this project.)
bb5d4e1a
RS
349@end itemize
350
6af1f598 351@node X Windows Projects, Network Projects, Extensions, Top
d9e60f52 352@chapter X Windows Projects
bb5d4e1a 353
d9e60f52 354@itemize @bullet
bb5d4e1a
RS
355@item
356An emulator for Macintosh graphics calls on top of X Windows.
357
0f82d9d8
RS
358@item
359A package that emulates the API of Visual C++, but operates on top of
360X11. It need not match the screen appearance of Visual C++. Instead,
361it would be best to use GTK, so as to give coherence with GNOME.
362
363@item
364A compatible replacement for Visual Basic, running on top of X11.
365It need not match the screen appearance of Visual C++. Instead,
366it would be best to use GTK, so as to give coherence with GNOME.
367
bb5d4e1a 368@item
ca0afed9 369A music playing and editing system. This should work with LilyPond, a
fff05d88
RS
370GNU program for music typesetting.
371
0f82d9d8
RS
372@item
373An ear-training program for students of music.
374
fff05d88
RS
375@item
376An ephemeris program to replace xephem (which is, alas, too restricted
377to qualify as free software).
7263f2f7 378
bb5d4e1a
RS
379@item
380A program to edit dance notation (such as labanotation) and display
381dancers moving on the screen.
382
b10fca68 383@item
fff05d88 384Make sure the Vibrant toolkit works with LessTif instead of Motif.
b10fca68 385
bb5d4e1a
RS
386@item
387A program to display and edit Hypercard stacks.
388
c05524ad
RS
389@item
390A program for graphic morphing of scanned photographs.
0f82d9d8
RS
391
392@item
393Software for designing and printing business cards.
bb5d4e1a
RS
394@end itemize
395
6af1f598 396@node Network Projects, Encryption Projects, X Windows Projects, Top
ab9ca9c7
JWI
397@chapter Network Projects
398
399@itemize @bullet
3b72e81d
JE
400@ignore
401@c www.openh323.org is doing this. Craig Southeren <craigs@equival.com.au>
ab9ca9c7
JWI
402@item
403A teleconferencing program which does the job of CU-SeeMe (which is,
404alas, not free software).
3b72e81d 405@end ignore
ab9ca9c7 406
2f845c34
KH
407@ignore
408@c Bishop Bettini <bishop@synxcti.com> is working on this.
ab9ca9c7
JWI
409@item
410A free ICQ-compatible server program. (The ICQ server itself is not
411free software.)
2f845c34
KH
412@end ignore
413
ab9ca9c7
JWI
414@end itemize
415
6af1f598 416@node Encryption Projects, Other Projects, Network Projects, Top
ca0afed9 417@chapter Encryption Projects
bb5d4e1a 418
ca0afed9
RS
419These projects need to be written outside the US by people who are not
420US citizens, to avoid problems with US export control law.
bb5d4e1a 421
d9e60f52 422@itemize @bullet
c05524ad 423@item
ca0afed9 424A free library for public-key encryption.
c05524ad 425
ca0afed9 426This library should use the Diffie-Helman algorithm for public key
c05524ad 427encryption, not the RSA algorithm, because the Diffie-Helman patent in
fff05d88
RS
428the US expired in 1997. This library can probably be developed from
429the code for the GNU Privacy Guard (now in development).
7263f2f7 430
dc32c4fa
RS
431@item
432An implementation of SSLv3 (more precisely, TLSv1) which is patent-free
433(uses the non-RSA algorithms) and has distribution terms compatible with
434the GNU GPL. We know of a GPL-covered implemention of a version of SSL
435that you can use as a starting point.
436
bb5d4e1a 437@item
eee331a5
RS
438Free software for doing secure commercial transactions on the web.
439This too needs public key encryption.
ca0afed9
RS
440@end itemize
441
dc32c4fa
RS
442The projects to provide free replacements for PGP and SSH are no longer
443listed here, because projects to do those jobs are well under way.
fff05d88 444
6af1f598 445@node Other Projects, Languages, Encryption Projects, Top
ca0afed9 446@chapter Other Projects
bb5d4e1a 447
ca0afed9 448If you think of others that should be added, please
fff05d88 449send them to @email{gnu@@gnu.org}.
ca0afed9
RS
450
451@itemize @bullet
c6d6677e 452@ignore OpenBIOS is doing this
fff05d88
RS
453@item
454A simple PC BIOS. On most new PCs, the BIOS is stored in writable
455memory (misleadingly known as ``flash ROM''). In order to have a wholly
456free system on these PCs, we need a free BIOS.
457
458This task is made simpler by the fact that this BIOS need only support
459enough features to enable a boot-loader such as LILO or GRUB to finish
460loading the kernel. Neither Linux nor Mach actually uses the BIOS once
461it starts up. Also, it is not absolutely necessary to do all the many
462diagnostics that an ordinary BIOS does (though it would be useful to do
463some of them). However, there may be a need to configure certain data
464in the computer in a way that is specific to each model of computer.
c6d6677e 465@end ignore
fff05d88 466
8d6ebf2e 467@ignore Frank Cruz promises a free version
a47e454e 468@item
7c4978a8
RS
469A free program that can transfer files on a serial line
470using the same protocol that Kermit uses.
8d6ebf2e 471@end ignore
a47e454e 472
bb5d4e1a
RS
473@item
474An imitation of Page Maker or Ventura Publisher.
475
476@item
f5c525cd
KH
477An imitation of @code{dbase2} or @code{dbase3}. (How dbased!)
478@uref{http://www.startech.keller.tx.us/xbase/xbase.html} may contain
479some useful stuff to start with.
bb5d4e1a 480
bb5d4e1a 481@item
c05524ad
RS
482A general ledger program, including support for accounts payable,
483account receivables, payroll, inventory control, order processing, etc.
484
bb5d4e1a 485@item
fff05d88
RS
486A free replacement for Glimpse, which is not free software.
487
0f82d9d8
RS
488@item
489Software for desktop publishing. We are extending Emacs into a WYSIWYG
490word processor, to handle primarily linear text; what this item proposes
491is software focused on page layout.
492
283fd8a7 493@ignore It looks like TruePrint will fill this gap
fff05d88
RS
494@item
495A program to typeset C code for printing, to make it easier to read on
496paper. For ideas on what to do, see the book,
bb5d4e1a
RS
497
498@display
499Human Factors and Typography for More Readable Programs,
500Ronald M. Baecker and Aaron Marcus,
501Addison-Wesley, ISBN 0-201-10745-7
502@end display
503
fff05d88 504But you don't have to do exactly what they propose.
283fd8a7 505@end ignore
bb5d4e1a 506
fff05d88
RS
507@ignore
508@c This is now being worked on -- rms, 22 June 1998
7c4978a8 509@item
541d49e1
JG
510A program to convert Microsoft Word documents to text/enriched, TeX,
511LaTeX, Texinfo, or some other format that free software can edit.
fff05d88
RS
512@end ignore
513
514@ignore
515@c People are helping the developer of siff release it as free software.
7c4978a8 516
fff05d88 517@item
50b9d07d 518A free replacement for siff (sometimes called sif). This would be a
fff05d88
RS
519program to find similar files in a large file system, ``similar''
520meaning that the files contain a significant number of common substrings
521that are of a certain size or greater. You can find some information
522about siff (which is, unfortunately, not free software) at
523@uref{ftp://ftp.cs.arizona.edu/reports/1993/TR93-33.ps.Z}.
524@end ignore
525
526@ignore
527@c This is being developed -- rms, 3 May 1998
7c4978a8
RS
528@item
529A free replacement for the semi-free Qt library.
fff05d88 530@end ignore
7c4978a8 531
ca0afed9
RS
532@item
533High-quality music compression software.
fff05d88 534(Talk with @email{phr@@netcom.com} for relevant suggestions.)
c6d6677e
RS
535Unfortunately we cannot implement the popular MP3 format
536due to patents, so this job includes working out some other
537non-patented format and compression method.
ca0afed9
RS
538
539@item
540A program to play sound distributed in ``Real Audio'' format.
541
542@item
543A program to generate ``Real Audio'' format from audio input.
544
fff05d88
RS
545@item
546Programs to handle audio in RTSP format.
547
632c6364 548@ignore @c Software patents have made this domain off limits to free software.
ca0afed9
RS
549@item
550An MPEG III audio encoder/decoder (but it is necessary to check, first,
551whether patents make this impossible).
552
ab9ca9c7 553@c Chris Hofstader is working on this.
bb5d4e1a
RS
554@item
555Speech-generation programs (there is a program from Brown U that you
556could improve).
557
ab9ca9c7 558@c We have a project now.
bb5d4e1a 559@item
948c942f 560Speech-recognition programs (single-speaker, disconnected speech is sufficient).
ab9ca9c7 561@end ignore
948c942f 562
1c5d31a7
JWI
563@item
564A braille translation and formatting system which can convert marked up
565documents into braille. This should let the user customize the braille
566translation rules; it would be good to divide it into a
567device-independent part plus drivers. Contact Jason White,
0fd51ae1 568@email{jasonw@@ariel.ucs.unimelb.EDU.AU}.
1c5d31a7 569
fff05d88
RS
570@ignore Being done
571@item
572A program to display text word by word, always showing just one word at
573a time. This method permits much faster reading than ordinary text
574display. If you want to work on this, contact @email{stutz@@dsl.org} to
575learn more.
576@end ignore
577
bb5d4e1a 578@item
b6a061a8
RS
579More scientific mathematical subroutines.
580(A clone of SPSS is being written already.)
bb5d4e1a
RS
581
582@item
583Statistical tools.
584
eee331a5
RS
585@item
586A scientific data collection and processing tool,
587perhaps something like Scientific Workbench and/or Khoros,
588
dd7dc1f9
JG
589@item
590A program to calculate properties of molecules by solving
591the Schroedinger equation.
592
bb5d4e1a
RS
593@item
594Software to replace card catalogues in libraries.
595
3ab93df3
BY
596@item
597A simulator for heating and air conditioning systems for buildings.
598
d2c1d7a8
KH
599@item
600A package for editing genealogical records conveniently.
601This could perhaps be done as a Gnome program, or perhaps
c04006ac 602as an Emacs extension.
d2c1d7a8 603
ca0afed9
RS
604@item
605A project-scheduling package that accepts a list of project sub-tasks
606with their interdependencies, and generates Gantt charts and Pert charts
607and all the other standard project progress reports.
608
bb5d4e1a
RS
609@item
610Grammar and style checking programs.
611
608369ba
JG
612@item
613A diagnostic program to test a hard disk.
614
eee331a5 615@item
ac01a1c0
RS
616A fast emulator for the i386, which would make it possible
617to emulate x86 code on other CPUs, and also to more easily
618debug kernels such as Linux more conveniently.
619
620To make this faster, it could work by translating machine instructions
621into the machine language of the host machine.
eee331a5 622
bb5d4e1a
RS
623@item
624Optical character recognition programs; especially if suitable for
625scanning documents with multiple fonts and capturing font info as well
261597d4 626as character codes. Work is being done on this, but more help is needed.
5aba97f2 627
bb5d4e1a
RS
628@item
629A program to scan a line drawing and convert it to Postscript.
630
631@item
632A program to recognize handwriting.
633
634@item
635A pen based interface.
636
bb5d4e1a
RS
637@item
638CAD software, such as a vague imitation of Autocad.
ca0afed9
RS
639
640@item
641A program to receive data from a serial-line tap to facilitate the
642reverse-engineering of communication protocols.
bb5d4e1a
RS
643@end itemize
644
6af1f598 645@node Languages, Games and Recreations, Other Projects, Top
0f82d9d8 646@chapter Programming Languages
bb5d4e1a 647
d9e60f52 648Volunteers are needed to write parsers/front ends for languages such as
0b2a408e 649Algol 60, Algol 68, PL/I, Cobol, Fortran 90, Delphi, Modula 2, Modula 3,
595ab6b8
JE
650RPG, and any other languages designed for compilation, to be used with
651the code generation phases of the GNU C compiler.
2eebaacd 652
fff05d88 653@c Fortran status is here so gnu@gnu.org and the volunteer coordinators
cab856b0 654@c don't have to answer the question -len
2eebaacd 655You can get the status of the Fortran front end with this command:
cab856b0 656
2eebaacd 657@example
fff05d88 658finger -l fortran@@gnu.org
cab856b0 659@end example
bb5d4e1a 660
0f82d9d8 661We would like to have translators from various languages into Scheme.
dc32c4fa 662These languages include TCL, Python, Perl, Java, Javascript, and Rexx.
0f82d9d8
RS
663
664We would like to have an implementation of Clipper, perhaps a GCC front
665end, and perhaps a translator into Scheme.
666
6af1f598 667@node Games and Recreations, , Languages, Top
d6eb79ad 668@chapter Games and Recreations
bb5d4e1a 669
c05524ad
RS
670Video-oriented games that work with the X window system.
671
d9e60f52 672@itemize @bullet
bb5d4e1a
RS
673@item
674Empire (there is a free version but it needs upgrading)
675
2eebaacd
RS
676@item
677An ``empire builder'' system that makes it easy to write various kinds of
678simulation games.
679
c05524ad
RS
680@item
681Improve GnuGo, which is not yet very sophisticated.
682
0f82d9d8
RS
683@item
684Network servers and clients for board and card games for which such
685software does not yet exist.
686
bb5d4e1a 687@item
fff05d88
RS
688A Hierarchical Task Network package which can be used
689to program play the computer's side in various strategic games.
690
691@item
692Write imitations of some popular video games:
bb5d4e1a 693
d9e60f52 694@itemize -
bb5d4e1a
RS
695@item
696Space war, Asteroids, Pong, Columns.
697@item
698Defending cities from missiles.
699@item
2eebaacd 700Plane shoots at lots of other planes, tanks, etc.
bb5d4e1a 701@item
fff05d88 702Wizard fights fanciful monsters.
bb5d4e1a
RS
703@item
704A golf game.
fff05d88 705@ignore Being done by jhall1@isd.net
bb5d4e1a
RS
706@item
707Program a robot by sticking building blocks together,
708then watch it explore a world.
fff05d88 709@end ignore
bb5d4e1a 710@item
7c4978a8
RS
711Biomorph evolution (as in Scientific American and @cite{The Blind
712Watchmaker}).
bb5d4e1a
RS
713@item
714A program to display effects of moving at relativistic speeds.
715@end itemize
bb5d4e1a
RS
716@end itemize
717
718We do not need @code{rogue}, as we have @code{hack}.
719
720@contents
721
722@bye
fff05d88
RS
723Local variables:
724update-date-leading-regexp: "@c This date is automagically updated when you save this file:\n@set lastupdate "
725update-date-trailing-regexp: ""
726eval: (load "/gd/gnuorg/update-date.el")
727eval: (add-hook 'write-file-hooks 'update-date)
728End: