Mindy is an implementation of a language that is very much like the
language described in the Dylan Reference Manual
_ (DRM). Mindy was
named for "Mindy Is Not Dylan Yet", and it still is and will probably
always remain a Dylan subset, primarily because mindycomp
doesn’t
do enough semantic analysis to implement macros or to implement the
precise semantics of Dylan naming.
... Put more info here in the near future ...
Mindy has very few dependencies:
flex
bison
cmake
ninja
or make
on all but Windows.cmake
and ninja
or make
know how to drive.Packages for these are typically available on all platforms or may already be installed by default.
Mac OS X with homebrew (and Xcode already installed)::
brew install cmake ninja
Mindy comes with a build system that uses cmake
_.
We recommend doing your build with ninja
_ rather than make
as it is significantly faster and therefore more enjoyable.
We also recommend using a separate directory for your build rather than doing it directly in the source directory. Fortunately, this is very easy to do.
::
mkdir build
cd build
cmake .. -G Ninja
ninja
ninja test
If you want to build the documentation, make sure that you've installed
Sphinx
_ and then pass -DMINDY_BUILD_DOCS=ON
when invoking cmake
::
cmake .. -G Ninja -DMINDY_BUILD_DOCS=ON
Also, make sure that you've gotten the Git submodules along with the sources for this repository. You can do this by cloning recursively::
git clone --recursive https://github.com/project-mindy/mindy.git
If you've already cloned the repository, then you can::
git submodule update --init --recursive
The documentation will be present in your build directory in
documentation/html
.
We'll link here when the documentation has been revived and placed online.
Apart from just using mindy, you're more than welcome to help us develop it further and improve it.
Gitter
_ (similar to Slack).#dylan
on irc.freenode.net
if you prefer.mailing list
_.open issues
or our list of open easy issues
.Since we already have Open Dylan
_, why is Mindy useful?
.. _Dylan Reference Manual: http://opendylan.org/books/drm/ .. _cmake: http://www.cmake.org/ .. _ninja: https://martine.github.io/ninja/ .. _Sphinx: http://www.sphinx-doc.org/ .. _Gitter: https://gitter.im/project-mindy/mindy .. _mailing list: https://lists.opendylan.org/mailman/listinfo/hackers .. _open issues: https://github.com/project-mindy/mindy/issues .. _open easy issues: https://github.com/project-mindy/mindy/issues?q=is%3Aopen+is%3Aissue+label%3AE-easy .. _Open Dylan: https://github.com/dylan-lang/opendylan