mirror of
https://git.FreeBSD.org/ports.git
synced 2024-10-31 21:57:12 +00:00
38 lines
1.8 KiB
Plaintext
38 lines
1.8 KiB
Plaintext
This is a port of the CMU Gwydion project's implementation of the
|
|
Dylan programming language. Dylan is an object-oriented language with
|
|
many powerful features, including automatic memory management (garbage
|
|
collection), generic functions (also known as multiple dispatch or
|
|
multi-methods), multiple inheritance, a powerful and safe macro
|
|
facility for extending the language's syntax, and a powerful class and
|
|
function library. Though it is a DYnamic LANguage, it includes
|
|
facilities for making compiled programs more efficient than many other
|
|
dynamic languages.
|
|
|
|
The Dylan language was originally developed by Apple, but the project
|
|
was dropped just as the language definition was being finished and
|
|
before a production-quality compiler was complete. The Gwydion
|
|
project and Harlequin have continued use and development of the
|
|
language.
|
|
|
|
Gwydion Dylan actually contains two implementations of the language.
|
|
One, called Mindy (Mindy Is Not Dylan Yet), is a bytecode compiler and
|
|
interpreter that implements most of the language except for the macro
|
|
facility. The other, d2c, is a compiler for the full language that
|
|
uses C as its target "assembly language". The d2c compiler was
|
|
written in Dylan and bootstrapped using Mindy.
|
|
|
|
A copy of the d2c compiler binary is required by the port to
|
|
bootstrap the entire system. As the Gwydion documentation says,
|
|
|
|
Recompiling the entire system takes over an hour on 64meg 200mhz
|
|
Pentium Pro running Windows/NT. This is almost all for the
|
|
compilation of the d2c runtime and compiler; compiling just Mindy
|
|
takes only a few minutes. d2c also uses lots of memory, especially
|
|
when compiling itself: you want at least 48 meg, and more is
|
|
better.
|
|
|
|
For more information about Gwydion Dylan, see the Gwydion Dylan maintainers
|
|
WWW: http://www.gwydiondylan.org/
|
|
|
|
-Peter S. Housel- housel@acm.org
|