MAN page from RedHat Other gwydion-dylan-2.3.3-2.i386.rpm
D2C
Section: Gwydion Dylan (1)
Updated: 17 May 2000
Index NAME
d2c - A Dylan-to-C compiler
SYNOPSIS
d2c[
option ]...
lidfile WARNING
This man page is intended to supplement the main Gwydion Dylandocumentation at
http://www.gwydiondylan.org/.It provides an incomplete reference of the available options. For a fullreference or a tutorial, please see the web site.
DESCRIPTION
d2cis an aggressively optimizing Dylan compiler which generates C code. Undernormal cicumstances, it will then automatically invoke your C compiler togenerate native executables.
d2csupports nearly all of the Dylan language, including the macro system. Itcan interface with C usingmelange(1), and can compile code developed under themindy(1)Dylan interpreter.
PROGRAM STRUCTURE
A Dylan program is made up out of one or more libraries. Each librarycontains one or more modules, each of which can be defined in one or moresource files.
d2ccompiles an entire library at once and performs aggressiveinter-file optimizations.
You describe a library by creating alid(library interchange definition) file which lists the files to be compiled and any relevant options. Youthen feed this file throughd2cto produce a static library or an executable (shared library support isbeing debugged at the moment).
You can use themake-dylan-app(1)script to create a sample Dylan program composed of alidfile and an empty main function.
OPTIONS
- --help
- Print out a message describing the available options.
- --version
- Print out the version and copyright.
- -L, --libdir libdir
- Specify an extra directory to search for compiled Dylan libraries.
- -D, --define feature
- Define a conditional-compilation feature which can be tested with #if.
- -U, --undefine feature
- Undefine a conditional-compilation feature which can be tested with #if.
- -M, --log-deps
- Writemake(1)-style dependency information to a file when compiling. You can theninclude this file into your Makefiles.
- -T, --target target
- Generate code for the platform namedtargetinstead of the native platform.
- -p, --platforms descriptions
- Get platform descriptions from the filedescriptionsinstead of the standardplatforms.descr(4)file.
- --no-binaries
- Do not compile generated C files. Often used in conjunction with-T.
- -d, --break
- Halt the compiler upon encountering an error. This is generally used whendebuggingd2citself.
- -F, --cc-override-command command
- Usecommandto invoke the C compiler on certain source files (see below). This can beused to work around bugs in the native C compiler by passing non-standardoptions.
- -f, --cc-override-file file
- Markfileas using a non-standard command to invoke the C compiler (see above).
- -g, --debug
- Try to generate binaries suitable for debugging. At the moment, that meansincluding all declared functions in the generated code.
- -s, --static
- Force programs to link against static libraries. This will become moreuseful once shared libraries are supported, of course.
- --dump-transforms
- Display way, way too much information about whatd2cis doing. If you suspect you've found an optimizer bug, this is the placeto start looking.
BUGS
d2cruns very slowly. We need to profile it and speed things up by about anorder of magnitude. Harlequin Dylan shows this is possible.
It would be nice to support compilation of single-file Dylan programs,source-level debugging and incremental compilation. Shared library supportneeds to be fixed, and an efficient solution for the fragile base classproblem should be found.
Certain obscure Dylan features are missing, most notably support forcreating classes at runtime.
Other bugs can be found on the website.
SEE ALSO
dylan(7),
gwydion(7),
melange(1),
make-dylan-app(1),
platforms.descr(4),
mindy(1).
Much more extensive documentation in various formats is available throughthe Gwydion Dylan web site athttp://www.gwydiondylan.org/.
AUTHORS
The Gwydion Group at CMU and the current Gwydion Dylan maintainers. See theCREDITS file in the Gwydion Dylan distribution for more information.
Index
- NAME
- SYNOPSIS
- WARNING
- DESCRIPTION
- PROGRAM STRUCTURE
- OPTIONS
- BUGS
- SEE ALSO
- AUTHORS
This document was created byman2html,using the manual pages.