category: macro preprocessors
-
Description:
|
These are tools that expand macros for another language.
|
|---|
-
Language:
|
C preprocessor
|
|---|
-
Package:
|
amc
|
|---|
-
Version:
|
1.0
|
|---|
-
Parts:
|
compiler
|
|---|
-
Author:
|
myg@din.net
|
|---|
-
Location:
|
http://www.din.net/amc
|
|---|
-
Description:
|
Gives languages like C a module structure more
akin to TurboPascal. Support for a more dynamic form
of OOP is still in development, although the hooks
are here. Some documentation is really needed, any
voulanteers?
|
|---|
-
Features:
|
well written code (IMHO), can easily add your own
extensions and integrated them with little effort.
|
|---|
-
Bugs:
|
It could do a better job of copying C code rather than
using MACRO's. Later.
|
|---|
-
Restrictions:
|
See license agreement, not many. Just E-mail author about
anything not in agreement with License.
|
|---|
-
Ports:
|
HP-UX, Linux, Solaris, NeXTStep
|
|---|
-
Contact:
|
myg@din.net
|
|---|
-
Updated:
|
June 2nd, 1997
|
|---|
-
Language:
|
C-Refine, C++-Refine, *-Refine
|
|---|
-
Package:
|
crefine
|
|---|
-
Version:
|
3.0
|
|---|
-
Parts:
|
pre-processor, documentation
|
|---|
-
Author:
|
Lutz Prechelt <prechelt@ira.uka.de>
|
|---|
-
Location:
|
aquire from any comp.sources.reviewed archive
|
|---|
-
Description:
|
C-Refine is a preprocessor for C and languages that
vaguely resemble C's syntax. It allows symbolic naming
of code fragments so as to redistribute complexity and
provide running commentary.
|
|---|
-
Ports:
|
unix, msdos, atari, amiga.
|
|---|
-
Portability:
|
high
|
|---|
-
Updated:
|
July 16th, 1992
|
|---|
-
Language:
|
C preprocessor
|
|---|
-
Package:
|
Decus cpp
|
|---|
-
Version:
|
?
|
|---|
-
Parts:
|
pre-processor
|
|---|
-
Author:
|
Martin Minow
|
|---|
-
Location:
|
included in the X11R5 distribution as contrib/util/cpp
|
|---|
-
Description:
|
An almost-ANSI C preprocessor. It is shipped with X11R5
because some systems don't have a working cpp.
|
|---|
-
Ports:
|
VMS (Vax C, Decus C), RSX-11M, RSTS/E, P/OS, and RT11,
A/UX, Apollo Domain/IX 9.6, etc.
|
|---|
-
Portability:
|
very high
|
|---|
-
Updated:
|
?
|
|---|
-
Language:
|
gema
|
|---|
-
Package:
|
gema
|
|---|
-
Version:
|
1.1
|
|---|
-
Parts:
|
macro processor, documentation, examples.
|
|---|
-
Author:
|
David N. Gray <DGray@acm.org>
|
|---|
-
Location:
|
FTP://ftp.ugcs.caltech.edu/pub/gema/gema.tar.gz
MS-DOS executable in file exe.zip
To just view doc: http://www.ugcs.caltech.edu/gema/
|
|---|
-
Description:
|
A general-purpose macro processor that uses pattern
matching and replacement. It can be used as a
pre-processor or to translate one language to another, or
to extract selected information from files.
|
|---|
-
Features:
|
- Does not impose any particular syntax for macro calls.
- No built-in assumptions about input language syntax.
- Can recognize patterns spanning multiple lines.
- Handles recursive patterns, such as matching pairs of
nested parentheses.
- Different sets of rules can be used in different contexts.
- Easy to ignore redundant white space.
|
|---|
-
Requires:
|
ANSI C compiler
|
|---|
-
Ports:
|
Unix, MS-DOS, Windows/NT
|
|---|
-
Updated:
|
May 23rd, 1995
|
|---|
-
Language:
|
C, C++, Objective-C, RTL
|
|---|
-
Package:
|
GNU CC (gcc)
|
|---|
-
Version:
|
2.7.1
|
|---|
-
Parts:
|
compiler, runtime, examples, documentation
Library listed separately
|
|---|
-
Author:
|
Richard Stallman and others
|
|---|
-
Location:
|
|
|---|
-
Description:
|
A very high quality, very portable compiler for C, C++,
Objective-C. The compiler is designed to support multiple
front-ends and multiple back-ends by translating first
into RTL (Register Transfer Language) and from there into
assembly for the target architecture. Front ends for
Ada, Pascal, and Fortran are all under development.
There is a bounds checking port based on gcc 2.7.1.
Patches for this port are available at:
ftp://dse.doc.ic.ac.uk/pub/misc/bcc
|
|---|
-
Conformance:
|
C: superset of K&R C and ANSI C.
C++: supports most ARM features; exceptions supported
only on some platforms. Supports "bool". Alpha-level
RTTI implementation included. Not yet supported: member
templates, namespaces. Developers are tracking the draft
ANSI/ISO standard and are committee members.
Objective-C: Complies with NeXT proposed (ANSI?) standard.
|
|---|
-
Bugs:
|
gnu.gcc.bug (for C/Objective-C), gnu.g++.bug (for C++)
|
|---|
-
Restriction:
|
GNU General Public License
|
|---|
-
Ports:
|
3b1, a29k, aix385, alpha, altos3068, amix, arm, convex,
crds, elxsi, fx2800, fx80, genix, hp320, clipper,
i386-{dos,isc,sco,sysv.3,sysv.4,mach,bsd,linux,windows,OS/2},
iris,i860, i960, irix4, m68k, m88ksvsv.3, mips-news,
mot3300, next, ns32k, nws3250-v.4, hp-pa, pc532,
plexus, pyramid, romp, rs6000, sparc-sunos, freebsd
sparc-solaris2, sparc-sysv.4, spur, sun386, tahoe, tow,
umpis, vax-vms, vax-bsd, we32k, hitachi-{SH,8300}, 6811
|
|---|
-
Portability:
|
very high
|
|---|
-
Status:
|
actively developed
|
|---|
-
Discussion:
|
gnu.gcc.help (for C/Objective-C), gnu.g++.help (for C++)
|
|---|
-
Announcements:
|
gnu.gcc.announce (for C/Objective-C),
gnu.g++.announce (for C++)
|
|---|
-
Updated:
|
1995
|
|---|
-
Language:
|
C, C++, Objective-C, RTL
|
|---|
-
Package:
|
GNU CC (gcc) - unsupported Macintosh port
|
|---|
-
Version:
|
1.37
|
|---|
-
Parts:
|
compiler, runtime, examples, documentation
Library listed separately
|
|---|
-
Author:
|
?
|
|---|
-
Location:
|
mpw-gcc-1.37.1r14 from ?
|
|---|
-
Description:
|
This is an unsupported port of the GNU C compiler to the
Macintosh environment. [If anyone knows who the author is
please let me know - ed]
|
|---|
-
Bugs:
|
?
|
|---|
-
Restriction:
|
GNU General Public License
|
|---|
-
Ports:
|
Macintosh
|
|---|
-
Portability:
|
very high
|
|---|
-
Status:
|
?
|
|---|
-
Updated:
|
November 27th, 1993
|
|---|
-
Language:
|
m4
|
|---|
-
Package:
|
GNU m4
|
|---|
-
Version:
|
1.4
|
|---|
-
Parts:
|
interperter
|
|---|
-
Author:
|
Francois Pinard <pinard@iro.umontreal.ca>
|
|---|
-
Location:
|
|
|---|
-
Description:
|
A macro preprocessor, more flexible than cpp.
It copies its input to the output, expanding macros. Macros
are either built-in or user-defined. `m4' has built-in
functions for including files, running Unix commands, doing
integer arithmetic, manipulating text in various ways,
recursing, etc. `m4' can be used either as a front-end to a
compiler or as a macro processor in its own right.
|
|---|
-
Conformance:
|
Mostly SVR4 compatible with a few extensions.
|
|---|
-
Restriction:
|
GNU General Public License
|
|---|
-
Updated:
|
November 6th, 1994
|
|---|
-
Language:
|
C (ANSI), lcc intermediate format
|
|---|
-
Package:
|
lcc
|
|---|
-
Version:
|
3.4b
|
|---|
-
Parts:
|
compiler, test suite, documentation
|
|---|
-
Authors:
|
Chris Fraser <cwf@research.att.com>
Dave Hanson <drh@cs.princeton.edu>
|
|---|
-
Location:
|
ftp://ftp.cs.princeton.edu/pub/lcc/*
|
|---|
-
Description:
|
- hand coded C parser (faster than yacc)
- retargetable
- code "nearly as good as GCC"
|
|---|
-
Ports:
|
x86, MIPS, SPARC
|
|---|
-
Status:
|
small-scale production use
|
|---|
-
Discussion:
|
email "subscribe lcc" to majordomo@cs.princeton.edu
|
|---|
-
Updated:
|
Febuary 1st, 1995
|
|---|
-
Language:
|
m4
|
|---|
-
Package:
|
pd/bsd m4
|
|---|
-
Version:
|
?
|
|---|
-
Parts:
|
interpreter, man page
|
|---|
-
Author:
|
Ozan Yigit <oz@sis.yorku.ca>,
Richard A. O'Keefe <ok@goanna.cs.rmit.OZ.AU>
|
|---|
-
Location:
|
ftp from any 386BSD, NetBSD, or FreeBSD archive
|
|---|
-
Description:
|
A macro preprocessor, more flexible than cpp
|
|---|
-
Conformance:
|
?
|
|---|
-
Updated:
|
November 3rd, 1993
|
|---|
|
|