Need help with alex?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

simonmar
227 Stars 65 Forks BSD 3-Clause "New" or "Revised" License 519 Commits 33 Opened issues

Description

A lexical analyser generator for Haskell

Services available

!
?

Need anything else?

Contributors list

Alex: A Lexical Analyser Generator

Build Status

Alex is a Lex-like tool for generating Haskell scanners. For complete documentation, see the doc directory.

Alex is covered by a BSD-Style licence; see the licence file in the

doc
directory for details.

The sources are in the

src
directory and the documentation in the
doc
directory; various examples are in the
examples
subdirectory.

The source code in the

src
and
examples
directories is intended to work with GHC >= 7.0.

Build Instructions

If you just want to use Alex, you can download or install (via

cabal install alex
) an Alex release from Hackage; also note that distributions such as the Haskell Platform and other package manager-based distributions provide packages for Alex. Moreover, recent versions of
cabal
will automatically install the required version of
alex
based on
build-tools
/
build-tool-depends
declarations
.

Read on if you want to build Alex directly from Git.

Alex is built using GHC & Cabal; so first install GHC and

cabal-install-2.0
(or later).

Since Alex itself is implemented in terms of an Alex scanner, bootstrapping Alex is a bit tricky:

You need to have the build-tools

alex
and
happy
manually installed; either via your system package manager distribution, the Haskell Platform, or e.g. via (run this outside the Git repository!):
$ cabal install alex happy

which installs them into

${HOME}/.cabal/bin
by default (make sure they are in your
$PATH
for the next steps!).

Variant A

You can install

alex
simply by invoking
$ cabal install

from inside the Git folder.

Variant B

Alternatively, you can use the

Makefile
which automates the steps of producing a self-contained pre-bootstrapped source distribution with pre-generated lexer/scanners:
$ make sdist
$ cabal install dist/alex-*.tar.gz

For convenience, there is also a

make sdist-test
target which builds the source source tarball and runs the test-suite from within the source dist.

Contributing & Reporting Issues

Please report any bugs or comments at https://github.com/simonmar/alex/issues

Share and enjoy,

Chris Dornan: [email protected]

Isaac Jones: [email protected]

Simon Marlow: [email protected]

and recent contributors.

Current Maintainers

  • John Ericson (@Ericson2314)

  • Simon Marlow (@simonmar)

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.