on master help sign in
Update README.md
984f95fEvan Czaplicki
README.md+15−5
@@ -9,19 +9,29 @@ If you intend to serve Elm code with a Haskell backend, be sure to read all the
9Installation for General Use
9Installation for General Use
10----------------------------
10----------------------------
11
11
12−Download the [Haskell Platform](http://hackage.haskell.org/platform/). This will give you access to the Haskell compiler (needed to build Elm) and Haskell's package distribution system (to make installation of Elm easier). Once installed (even if it already was), you must update your listing of Haskell packages with:
12+Download the [Haskell Platform](http://hackage.haskell.org/platform/). This will give you access to the Haskell compiler (needed to build Elm) and Haskell's package distribution system (to make installation of Elm easier). Elm works best
13+with version 7.4 of the Haskell compiler (i.e. GHC 7.4)
14+
15+Once installed (even if it already was), you must update your listing of Haskell packages with:
13
16
14 cabal update
17 cabal update
15
18
16This will ensure that the elm package is available. Then install Elm with:
19This will ensure that the elm package is available. Then install Elm with:
17
20
18− cabal install elm-server
21+ cabal install elm
22+
23+Assuming everything goes correctly (potential problems are discussed later), this will install the `elm` compiler on your machine. `elm` is a standard compiler that takes `.elm` files and produces `.html` and/or `.js` files. You can then use these files with your favorite web-framework. Use `elm --help` for more directions on how to use it.
19
24
20−Assuming everything goes correctly (potential problems are discussed later), this will build two executables on your machine:
25+If you have this installed you can write and compile Elm locally.
26+
27+You can also install `elm-server` which is both a compiler and server, allowing you to develop without designing and setting up a server yourself. Running `elm-server` starts a server in the current directory. It will compile and serve any `.elm` files in the current directory and its sub-directories. This is how I prefer to develop Elm programs. Install with:
28+
29+ cabal install elm-server
21
30
22−* `elm` is a standard compiler that takes `.elm` files and produces `.html` and/or `.js` files. You can then use these files with your favorite web-framework.
31+Dependency issues have been cropping up with this step, so if you run into issues, know that they are being worked on.
32+Once installed, use the command `elm-server --help` to see some extra information.
23
33
24−* `elm-server` is both a compiler and server, allowing you to develop without designing and setting up a server yourself. Running `elm-server` starts a server in the current directory. It will compile and serve any `.elm` files in the current directory and its sub-directories. This is how I prefer to develop Elm programs. Use the command `elm-server --help` to see some extra information.
34+#### Using the Elm compiler and server
25
35
26To use these executables you need to add a new directory to your PATH. For me, the executables were placed in `/home/evan/.cabal/bin` which I appended to the end of my PATH variable in my .bashrc file. Cabal should tell you where your executables are located upon successful installation, so you can make a similar addition (see this tutorial if you are new to changing your PATH in [Unix/Linux](http://www.cyberciti.biz/faq/unix-linux-adding-path/)).
36To use these executables you need to add a new directory to your PATH. For me, the executables were placed in `/home/evan/.cabal/bin` which I appended to the end of my PATH variable in my .bashrc file. Cabal should tell you where your executables are located upon successful installation, so you can make a similar addition (see this tutorial if you are new to changing your PATH in [Unix/Linux](http://www.cyberciti.biz/faq/unix-linux-adding-path/)).
27
37