7If you have the Haskell Plaform installed, then you can install the latest released version from Hackage::
10 cabal install purescript
12If you would like to build the latest version of the code, clone this repository and build::
14 git clone git@github.com:purescript/purescript.git
16 cabal configure --enable-tests
21Alternatively, consider installing PureScript in a Cabal sandbox using ``cabal sandbox init``.
23Creating a new PureScript project
24---------------------------------
26You can create a new PureScript project using ``grunt-init`` and `this PureScript project template <https://github.com/purescript-contrib/grunt-init-purescript>`_. This will give you a project that uses `Grunt <http://gruntjs.com>`_ as its build tool and `Bower <http://bower.io>`_ for dependency management. See the `README <https://github.com/purescript-contrib/grunt-init-purescript>`_ for step-by-step instructions.
31The `psc` executable takes a list of PureScript source files as arguments and by default writes out its errors or output to the console.
33The following options are supported:
35--stdin Read input from standard input instead of from files.
36--output Write the generated Javascript to the specified file.
37--externs Write a list of foreign imports declarations to the specified file in addition to generating Javascript output.
38--no-tco Turn off tail-call elimination.
39--no-prelude Do not include the Prelude in the generated Javascript.
40--no-magic-do Turn off optimizations which inline calls to ``>>=`` for the ``Eff`` monad.
41--no-opts Disable all optimizations.
42--main Generate a call to ``main`` in the specified module after all other generated Javascript. Defaults to ``Main`` if the option is used but no value is provided.
43--module If specified, any code which is not referenced transitively from this module will be removed. This argument can be used multiple times.
44--codegen A list of modules for which Javascript and externs should be generated. This argument can be used multiple times.
45--browser-namespace Specify the namespace that PureScript modules will be exported to when running in the browser.
46--verbose-errors Generate verbose error messages.
51The ``psc-make`` executable makes CommonJS modules and supports incremental compilation. Unlike ``psc``, it does not do dead code elimination.
53The following command line options are supported:
55--output=VAL The output directory. Default: ``output``.
56--verbose-errors Display verbose error messages.
57--help=FMT Show this help in format FMT (``pager``, ``plain``, or ``groff``). Default: ``pager``.
58--no-magic-do Disable the optimization that overloads the ``do`` keyword to generate efficient code specifically for the ``Eff`` monad.
59--no-opts Skip the optimization phase.
60--no-prelude Omit the Prelude.
61--no-tco Disable tail call optimizations
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list