Browse Source

Fix haskell formatting

Tianon Gravi 11 years ago
parent
commit
55885b3ff3
2 changed files with 92 additions and 32 deletions
  1. 46 16
      haskell/README.md
  2. 46 16
      haskell/content.md

+ 46 - 16
haskell/README.md

@@ -10,26 +10,54 @@ repo](https://github.com/docker-library/official-images).
 
 # What is Haskell?
 
-[Haskell](http://www.haskell.org) is a [lazy](http://en.wikibooks.org/wiki/Haskell/Laziness), functional, statically-typed programming language with advanced type system features such as higher-rank, higher-kinded parametric [polymorphism](http://en.wikibooks.org/wiki/Haskell/Polymorphism), monadic [effects](http://en.wikibooks.org/wiki/Haskell/Understanding_monads/IO), generalized algebraic data types ([GADT](http://en.wikibooks.org/wiki/Haskell/GADT)s), flexible [type classes](http://en.wikibooks.org/wiki/Haskell/Advanced_type_classes), associated [type families](http://en.wikipedia.org/wiki/Type_family), and more.
-
-Haskell's [`ghc`](http://www.haskell.org/ghc) is a [portable](https://ghc.haskell.org/trac/ghc/wiki/Platforms), [optimizing](http://benchmarksgame.alioth.debian.org/u64q/haskell.php) compiler  with a foreign-function interface ([FFI](http://en.wikibooks.org/wiki/Haskell/FFI)), an [LLVM backend](https://www.haskell.org/ghc/docs/7.8.3/html/users_guide/code-generators.html), and sophisticated runtime support for [concurrency](http://en.wikibooks.org/wiki/Haskell/Concurrency), explicit/implicit [parallelism](http://community.haskell.org/~simonmar/pcph/), runtime [profiling](http://www.haskell.org/haskellwiki/ThreadScope), etc. Other Haskell tools like [`criterion`](http://www.serpentine.com/criterion/tutorial.html), [`quickcheck`](https://www.fpcomplete.com/user/pbv/an-introduction-to-quickcheck-testing), [`hpc`](http://www.haskell.org/haskellwiki/Haskell_program_coverage#Examples), and [`haddock`](http://en.wikipedia.org/wiki/Haddock_(software)) provide advanced benchmarking, property-based testing, code coverage, and documentation generation.
-
-A large number of production-quality Haskell libraries are available from [Hackage](https://hackage.haskell.org). The [`cabal`](https://www.fpcomplete.com/user/simonmichael/how-to-cabal-install) tool fetches packages and builds projects using the Hackage ecosystem.
+[Haskell](http://www.haskell.org) is a
+[lazy](http://en.wikibooks.org/wiki/Haskell/Laziness), functional,
+statically-typed programming language with advanced type system features such as
+higher-rank, higher-kinded parametric
+[polymorphism](http://en.wikibooks.org/wiki/Haskell/Polymorphism), monadic
+[effects](http://en.wikibooks.org/wiki/Haskell/Understanding_monads/IO),
+generalized algebraic data types
+([GADT](http://en.wikibooks.org/wiki/Haskell/GADT)s), flexible [type
+classes](http://en.wikibooks.org/wiki/Haskell/Advanced_type_classes), associated
+[type families](http://en.wikipedia.org/wiki/Type_family), and more.
+
+Haskell's [`ghc`](http://www.haskell.org/ghc) is a
+[portable](https://ghc.haskell.org/trac/ghc/wiki/Platforms),
+[optimizing](http://benchmarksgame.alioth.debian.org/u64q/haskell.php) compiler
+with a foreign-function interface
+([FFI](http://en.wikibooks.org/wiki/Haskell/FFI)), an [LLVM
+backend](https://www.haskell.org/ghc/docs/7.8.3/html/users_guide/code-generators.html),
+and sophisticated runtime support for
+[concurrency](http://en.wikibooks.org/wiki/Haskell/Concurrency),
+explicit/implicit [parallelism](http://community.haskell.org/~simonmar/pcph/),
+runtime [profiling](http://www.haskell.org/haskellwiki/ThreadScope), etc. Other
+Haskell tools like
+[`criterion`](http://www.serpentine.com/criterion/tutorial.html),
+[`quickcheck`](https://www.fpcomplete.com/user/pbv/an-introduction-to-quickcheck-testing),
+[`hpc`](http://www.haskell.org/haskellwiki/Haskell_program_coverage#Examples),
+and [`haddock`](http://en.wikipedia.org/wiki/Haddock_(software)) provide
+advanced benchmarking, property-based testing, code coverage, and documentation
+generation.
+
+A large number of production-quality Haskell libraries are available from
+[Hackage](https://hackage.haskell.org). The
+[`cabal`](https://www.fpcomplete.com/user/simonmichael/how-to-cabal-install)
+tool fetches packages and builds projects using the Hackage ecosystem.
 
 ![logo](https://raw.githubusercontent.com/docker-library/docs/master/haskell/logo.png)
 
-## Contents
+## About this image
 
 This image ships a minimal Haskell toolchain with the following packages:
 
-* `ghc` 7.8.3
-* `alex` 3.1.3
-* `cabal-install` 1.20.0.3
-* `happy` 1.19.4
+* `ghc`
+* `alex`
+* `cabal-install`
+* `happy`
 
-## Usage
+## How to use this image
 
-* Start an interactive interpreter session with `ghci`:
+Start an interactive interpreter session with `ghci`:
 
     $ docker run -it --rm haskell:7.8
     GHCi, version 7.8.3: http://www.haskell.org/ghc/  :? for help
@@ -38,14 +66,15 @@ This image ships a minimal Haskell toolchain with the following packages:
     Loading package base ... linking ... done.
     Prelude>
 
-* Dockerize a [Hackage](http://hackage.haskell.org) app with a Dockerfile inheriting from the base image:
+Dockerize a [Hackage](http://hackage.haskell.org) app with a Dockerfile
+inheriting from the base image:
 
     FROM haskell:7.8
     RUN cabal update && cabal install MazesOfMonad
     VOLUME /root/.MazesOfMonad
     ENTRYPOINT ["/root/.cabal/bin/mazesofmonad"]
 
-* Iteratively develop then ship a Haskell app with a Dockerfile utilizing the
+Iteratively develop then ship a Haskell app with a Dockerfile utilizing the
 build cache:
 
     FROM haskell:7.8
@@ -70,9 +99,10 @@ build cache:
     WORKDIR /opt/server
     CMD ["snap-example"]
 
-## Examples
+### Examples
 
-See the application snippet above in more detail in the [example snap application](https://github.com/darinmorrison/docker-haskell/tree/master/examples/7.8.3/snap).
+See the application snippet above in more detail in the [example snap
+application](https://github.com/darinmorrison/docker-haskell/tree/master/examples/7.8.3/snap).
 
 # License
 

+ 46 - 16
haskell/content.md

@@ -1,25 +1,53 @@
 # What is Haskell?
 
-[Haskell](http://www.haskell.org) is a [lazy](http://en.wikibooks.org/wiki/Haskell/Laziness), functional, statically-typed programming language with advanced type system features such as higher-rank, higher-kinded parametric [polymorphism](http://en.wikibooks.org/wiki/Haskell/Polymorphism), monadic [effects](http://en.wikibooks.org/wiki/Haskell/Understanding_monads/IO), generalized algebraic data types ([GADT](http://en.wikibooks.org/wiki/Haskell/GADT)s), flexible [type classes](http://en.wikibooks.org/wiki/Haskell/Advanced_type_classes), associated [type families](http://en.wikipedia.org/wiki/Type_family), and more.
-
-Haskell's [`ghc`](http://www.haskell.org/ghc) is a [portable](https://ghc.haskell.org/trac/ghc/wiki/Platforms), [optimizing](http://benchmarksgame.alioth.debian.org/u64q/haskell.php) compiler  with a foreign-function interface ([FFI](http://en.wikibooks.org/wiki/Haskell/FFI)), an [LLVM backend](https://www.haskell.org/ghc/docs/7.8.3/html/users_guide/code-generators.html), and sophisticated runtime support for [concurrency](http://en.wikibooks.org/wiki/Haskell/Concurrency), explicit/implicit [parallelism](http://community.haskell.org/~simonmar/pcph/), runtime [profiling](http://www.haskell.org/haskellwiki/ThreadScope), etc. Other Haskell tools like [`criterion`](http://www.serpentine.com/criterion/tutorial.html), [`quickcheck`](https://www.fpcomplete.com/user/pbv/an-introduction-to-quickcheck-testing), [`hpc`](http://www.haskell.org/haskellwiki/Haskell_program_coverage#Examples), and [`haddock`](http://en.wikipedia.org/wiki/Haddock_(software)) provide advanced benchmarking, property-based testing, code coverage, and documentation generation.
-
-A large number of production-quality Haskell libraries are available from [Hackage](https://hackage.haskell.org). The [`cabal`](https://www.fpcomplete.com/user/simonmichael/how-to-cabal-install) tool fetches packages and builds projects using the Hackage ecosystem.
+[Haskell](http://www.haskell.org) is a
+[lazy](http://en.wikibooks.org/wiki/Haskell/Laziness), functional,
+statically-typed programming language with advanced type system features such as
+higher-rank, higher-kinded parametric
+[polymorphism](http://en.wikibooks.org/wiki/Haskell/Polymorphism), monadic
+[effects](http://en.wikibooks.org/wiki/Haskell/Understanding_monads/IO),
+generalized algebraic data types
+([GADT](http://en.wikibooks.org/wiki/Haskell/GADT)s), flexible [type
+classes](http://en.wikibooks.org/wiki/Haskell/Advanced_type_classes), associated
+[type families](http://en.wikipedia.org/wiki/Type_family), and more.
+
+Haskell's [`ghc`](http://www.haskell.org/ghc) is a
+[portable](https://ghc.haskell.org/trac/ghc/wiki/Platforms),
+[optimizing](http://benchmarksgame.alioth.debian.org/u64q/haskell.php) compiler
+with a foreign-function interface
+([FFI](http://en.wikibooks.org/wiki/Haskell/FFI)), an [LLVM
+backend](https://www.haskell.org/ghc/docs/7.8.3/html/users_guide/code-generators.html),
+and sophisticated runtime support for
+[concurrency](http://en.wikibooks.org/wiki/Haskell/Concurrency),
+explicit/implicit [parallelism](http://community.haskell.org/~simonmar/pcph/),
+runtime [profiling](http://www.haskell.org/haskellwiki/ThreadScope), etc. Other
+Haskell tools like
+[`criterion`](http://www.serpentine.com/criterion/tutorial.html),
+[`quickcheck`](https://www.fpcomplete.com/user/pbv/an-introduction-to-quickcheck-testing),
+[`hpc`](http://www.haskell.org/haskellwiki/Haskell_program_coverage#Examples),
+and [`haddock`](http://en.wikipedia.org/wiki/Haddock_(software)) provide
+advanced benchmarking, property-based testing, code coverage, and documentation
+generation.
+
+A large number of production-quality Haskell libraries are available from
+[Hackage](https://hackage.haskell.org). The
+[`cabal`](https://www.fpcomplete.com/user/simonmichael/how-to-cabal-install)
+tool fetches packages and builds projects using the Hackage ecosystem.
 
 %%LOGO%%
 
-## Contents
+## About this image
 
 This image ships a minimal Haskell toolchain with the following packages:
 
-* `ghc` 7.8.3
-* `alex` 3.1.3
-* `cabal-install` 1.20.0.3
-* `happy` 1.19.4
+* `ghc`
+* `alex`
+* `cabal-install`
+* `happy`
 
-## Usage
+## How to use this image
 
-* Start an interactive interpreter session with `ghci`:
+Start an interactive interpreter session with `ghci`:
 
     $ docker run -it --rm haskell:7.8
     GHCi, version 7.8.3: http://www.haskell.org/ghc/  :? for help
@@ -28,14 +56,15 @@ This image ships a minimal Haskell toolchain with the following packages:
     Loading package base ... linking ... done.
     Prelude>
 
-* Dockerize a [Hackage](http://hackage.haskell.org) app with a Dockerfile inheriting from the base image:
+Dockerize a [Hackage](http://hackage.haskell.org) app with a Dockerfile
+inheriting from the base image:
 
     FROM haskell:7.8
     RUN cabal update && cabal install MazesOfMonad
     VOLUME /root/.MazesOfMonad
     ENTRYPOINT ["/root/.cabal/bin/mazesofmonad"]
 
-* Iteratively develop then ship a Haskell app with a Dockerfile utilizing the
+Iteratively develop then ship a Haskell app with a Dockerfile utilizing the
 build cache:
 
     FROM haskell:7.8
@@ -60,6 +89,7 @@ build cache:
     WORKDIR /opt/server
     CMD ["snap-example"]
 
-## Examples
+### Examples
 
-See the application snippet above in more detail in the [example snap application](https://github.com/darinmorrison/docker-haskell/tree/master/examples/7.8.3/snap).
+See the application snippet above in more detail in the [example snap
+application](https://github.com/darinmorrison/docker-haskell/tree/master/examples/7.8.3/snap).