Skip to content

Commit

Permalink
Documentation for new installation procedures with fay-base and bump …
Browse files Browse the repository at this point in the history
…to 0.12.0.1

Conflicts:
	README.md
	fay.cabal
	src/Docs.hs
  • Loading branch information
bergmark committed Jan 23, 2013
1 parent 1fc14a9 commit 3587a6e
Show file tree
Hide file tree
Showing 4 changed files with 40 additions and 12 deletions.
16 changes: 14 additions & 2 deletions README.md
Expand Up @@ -17,6 +17,7 @@ programming language which has the following properties:
* Has fundamental data types (Double, String, etc.) based upon what JS can support
* Outputs minifier-aware code for small compressed size
* Has a trivial foreign function interface to JavaScript
* Supports cabal installation of Fay packages.

## Install and run

Expand All @@ -28,7 +29,8 @@ Or download and unpack:

$ cabal unpack fay
$ cd fay
$ cabal install
$ cabal unpack fay-base
$ cabal install . fay-base/

To run tests from within this directory (you need nodejs installed):

Expand Down Expand Up @@ -69,6 +71,11 @@ package from with an environment variable:

HASKELL_PACKAGE_SANDBOX=cabal-dev/packages-7.4.1.conf cabal-dev/bin/fay examples/alert.hs

## fay-base

[fay-base](http://www.github.com/faylang/fay-base) contains Fay's standard library and is needed in order to
use the compiler.

## The FFI

Here are the rules for serialization. All serialization is based on
Expand Down Expand Up @@ -113,13 +120,18 @@ For Google Closure's advanced optimizations you need to use string access to pro

## Contributing

When recompiling fay you need to recompile fay-base as well. It might best to do

fay$ git clone git://github.com/faylang/fay-base.git
fay$ cabal install . fay-base/

If you intend on submitting a pull request, whichever branch you
choose to submit a pull request on, please ensure that it is properly
rebased against master. This will ensure that the merge is clean and
that you have checked that your contribution still works against the
recent master. A typical workflow might be:

Have a remote setup that we can pull proper changes from:
Set up a remote that you can use to track the main repository:

$ git remote add fay git://github.com/faylang/fay.git

Expand Down
20 changes: 16 additions & 4 deletions Setup.hs
Expand Up @@ -7,10 +7,12 @@ import "base" Prelude
import Distribution.PackageDescription
import Distribution.Simple

main = defaultMainWithHooks simpleUserHooks
{ preConf = \_args _flags -> do putStrLn reminder
return emptyHookedBuildInfo
}
main = do
defaultMainWithHooks simpleUserHooks
{ preConf = \_args _flags -> do putStrLn reminder
return emptyHookedBuildInfo
, postInst = (\_ _ _ _ -> putStrLn fayBaseReminder)
}

reminder =
" \n\
Expand All @@ -20,4 +22,14 @@ reminder =
\ read the CHANGELOG for this release as the changes probably \n\
\ affect you. \n\
\ \n\
\ \n\
\ \n\
\- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n"

fayBaseReminder =
" \n\
\- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n\
\ \n\
\ You also need to install fay-base! \n\
\ \n\
\- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n"
14 changes: 9 additions & 5 deletions fay.cabal
@@ -1,10 +1,9 @@
name: fay
version: 0.12.0.0
version: 0.12.0.1
synopsis: A compiler for Fay, a Haskell subset that compiles to JavaScript.
description: Fay is a proper subset of Haskell which can be compiled (type-checked)
with GHC, and compiled to JavaScript. It is lazy, pure, with a Fay monad,
an FFI, tail-recursion optimization (experimental). It implements no type
system, for type-checking you should use GHC.
description: Fay is a proper subset of Haskell which is type-checked
with GHC, and compiled to JavaScript. It is lazy, pure, has a Fay monad,
an FFI, tail-recursion optimization (experimental), and support for cabal packages.
.
/Documentation/
.
Expand Down Expand Up @@ -51,6 +50,7 @@ description: Fay is a proper subset of Haskell which can be compiled (ty
.
See full history at: <https://github.com/faylang/fay/commits>
homepage: http://fay-lang.org/
bug-reports: https://github.com/faylang/fay/issues
license: BSD3
license-file: LICENSE
author: Chris Done, Adam Bergmark
Expand Down Expand Up @@ -122,6 +122,10 @@ extra-source-files: examples/ref.hs examples/alert.hs examples/console.hs examp
docs/snippets/tail.hs
docs/home.hs

source-repository head
type: git
location: https://github.com/faylang/fay.git

Flag devel
Description: Don't build fay-tests and fay-docs if this flag is supplied
Default: False
Expand Down
2 changes: 1 addition & 1 deletion src/Docs.hs
Expand Up @@ -244,7 +244,7 @@ thesetup = do
pre $ code "$ cabal install fay-base"
h3 "Running"
p "If developing, you can run the tests (you will need nodejs installed):"
pre $ code "$ cabal install"
pre $ code "$ cabal install . fay-base/"
pre $ code "$ fay-tests"
p "To compile a Fay program, run:"
pre $ code "$ fay foo.hs"
Expand Down

0 comments on commit 3587a6e

Please sign in to comment.