No description
Find a file
2014-02-17 21:28:15 +01:00
compiler Move getDataFile function so that it is not exposed to the outside world 2014-02-13 09:31:19 +01:00
libraries Get drop down menus rendering 2014-02-17 21:28:15 +01:00
runtime Attempt to revamp the Graphics.Input library, much testing still needed 2014-02-17 17:38:37 +01:00
server Bump version number of elm-server 2013-12-30 15:50:25 -08:00
tests Style changes and making things compatible with new Pattern constructor names 2014-02-10 00:18:19 +01:00
.gitignore Setup QuickCheck and add Literal Parse/Print test 2013-12-29 16:50:41 -06:00
.travis.yml Add basic Travis CI configuration 2014-01-02 18:10:11 -05:00
changelog.txt Collect changes going into the next release 2014-02-10 17:07:41 +01:00
CONTRIBUTING.md Use the github sanctioned name for this file, based on new facts from @devth 2013-12-24 10:27:45 -08:00
ContributorAgreement.pdf Mess around with wording and switch to using a pdf for the contributor agreement 2013-12-13 17:54:27 -08:00
Elm.cabal Make AST more general and try to give its phases better names 2014-02-10 00:17:33 +01:00
How to Request Features.md Add note about how to request features to the main repo 2013-12-21 14:48:53 -08:00
LICENSE It's 2013 everyone! 2013-09-13 12:09:10 -07:00
README.md Update to address problems reported in #457 2014-01-21 13:51:19 +01:00
Setup.hs Start using strict mode for everything 2014-02-13 09:31:19 +01:00

Learn about the Elm programming language at elm-lang.org.

Build Status

Install

Arch Linux — follow these directions and then jump to the My First Project section.
OS X 10.9 or XCode 5 — follow these directions before continuing with the platform agnostic directions below.

Platform Agnostic — download the Haskell Platform 2012.2.0.0 or later. Once the Haskell Platform is installed:

cabal update
cabal install elm
cabal install elm-server

Use

To use elm and elm-server you may need to add a new directory to your PATH.

Cabal should tell you where your executables are located upon successful installation. It'll be something like /home/evan/.cabal/bin which you should append to your PATH variable. See this tutorial if you are new to changing your PATH in Unix/Linux.

My First Project

Now we will create a simple Elm project. The following commands will set-up a very basic project and start the Elm server.

mkdir helloElm
cd helloElm
printf "import Mouse\n\nmain = lift asText Mouse.position" > Main.elm
elm-server

The first two commands create a new directory and navigate into it. The printf commands place a simple program into Main.elm. Do this manually if you do not have printf. The final command starts the Elm server at localhost:8000, allowing you to navigate to Main.elm and see your first program in action.

Final Notes

The elm package provides some utility functions for working with Elm in Haskell. This can be useful for creating tooling for Elm, and has been useful for projects like the website and elm-get. Email the list if you want to rely on these functions!

If you are stuck, email the list or ask a question in the #Elm IRC channel.