mirror of
https://github.com/qfpl/applied-fp-course.git
synced 2024-11-23 11:54:36 +03:00
Level Readme Adjustments
I just found out about reference links in Markdown, this has the ability to make the README markdown much easier to digest without losing the nice ability to have hyperlinks directly in the documentation. But leaves the text easier to digest for people that are not reading it through a _Markdown prism.
This commit is contained in:
parent
05d9ce923d
commit
2f20e0736c
@ -1,9 +1,10 @@
|
|||||||
# Level 01
|
# Level 01
|
||||||
|
|
||||||
The purpose of this exercise to whet our appetite a bit by spinning up an ultra
|
The purpose of this exercise to whet our appetite a bit by spinning up an ultra
|
||||||
basic web app. The focus will be on reading
|
basic web app. The focus will be on reading the [Hackage] documentation for the
|
||||||
the [Hackage](https://hackage.haskell.org/) documentation for
|
[Wai] framework. Consult the ``src/FirstApp/Main.hs`` to see the parts that are
|
||||||
the [Wai](https://hackage.haskell.org/package/wai) framework. Consult the
|
missing and what we need from the [Wai] package to make our "Hello, World!"
|
||||||
``src/FirstApp/Main.hs`` to see the parts that are missing and what we need from
|
application run.
|
||||||
the [Wai](https://hackage.haskell.org/package/wai) package to make our "Hello,
|
|
||||||
World!" application run.
|
[Hackage]: (https://hackage.haskell.org/)
|
||||||
|
[Wai]: (https://hackage.haskell.org/package/wai)
|
||||||
|
@ -5,14 +5,14 @@ structures, and how we can then use those data structures to guide construction.
|
|||||||
|
|
||||||
By using these data structures we provide a mechanism for utilising the compiler
|
By using these data structures we provide a mechanism for utilising the compiler
|
||||||
as a pair programmer. It will inform us when we've forgotten to handle a given
|
as a pair programmer. It will inform us when we've forgotten to handle a given
|
||||||
path, tried to use information we don't have access to, or haven't validated
|
path, tried to use information we don't have access to, or haven't validated our
|
||||||
our inputs sufficiently.
|
inputs sufficiently.
|
||||||
|
|
||||||
First, to build this application we're going to need some requirements:
|
First, to build this application we're going to need some requirements:
|
||||||
|
|
||||||
### Requirements
|
### Requirements "We have a WebThing(TM) somewhere and we would like, for some
|
||||||
"We have a WebThing(TM) somewhere and we would like, for some unknown reason, to
|
unknown reason, to be able to add comments to various topics on this
|
||||||
be able to add comments to various topics on this WebThing(TM)."
|
WebThing(TM)."
|
||||||
|
|
||||||
Let's pretend we've completed a dozen specification meetings with our Project
|
Let's pretend we've completed a dozen specification meetings with our Project
|
||||||
Manager, resulting in the specification below:
|
Manager, resulting in the specification below:
|
||||||
|
@ -11,18 +11,15 @@ As is to be expected, there are multiple testing frameworks and packages
|
|||||||
available but we will only cover one here. Chosen partly due to its possible
|
available but we will only cover one here. Chosen partly due to its possible
|
||||||
familiarity.
|
familiarity.
|
||||||
|
|
||||||
We will use the [HSpec](http://hspec.github.io/) framework, with
|
We will use the [HSpec] framework, with the [hspec-wai] package to make our
|
||||||
the [hspec-wai](https://hackage.haskell.org/package/hspec-wai) package to make
|
lives a bit easier.
|
||||||
our lives a bit easier.
|
|
||||||
|
|
||||||
|
|
||||||
### Tool Introduction: GHCID
|
### Tool Introduction: GHCID
|
||||||
|
|
||||||
Additionally we'd like to introduce a command line tool that we find quite
|
Additionally we'd like to introduce a command line tool that we find quite
|
||||||
useful for Haskell development; [ghcid](https://github.com/ndmitchell/ghcid).
|
useful for Haskell development; [ghcid]. This is a very lightweight tool that
|
||||||
This is a very lightweight tool that works for any project with a functioning
|
works for any project with a functioning cabal setup. In an spare open terminal
|
||||||
cabal setup. In an spare open terminal window, navigate to the project root of
|
window, navigate to the project root of the Haskell project and run ``$ ghcid``.
|
||||||
the Haskell project and run ``$ ghcid``.
|
|
||||||
|
|
||||||
It will then attempt to build your project, if errors are found they will be
|
It will then attempt to build your project, if errors are found they will be
|
||||||
displayed. But more importantly you can go back to editing files in the project
|
displayed. But more importantly you can go back to editing files in the project
|
||||||
@ -34,3 +31,7 @@ process with constant feedback about your changes. It is very useful in tandem
|
|||||||
with type holes. Give it a try!
|
with type holes. Give it a try!
|
||||||
|
|
||||||
Start in ``tests/Test.hs``.
|
Start in ``tests/Test.hs``.
|
||||||
|
|
||||||
|
[HSpec]: (http://hspec.github.io/)
|
||||||
|
[hspec-wai]: (https://hackage.haskell.org/package/hspec-wai)
|
||||||
|
[ghcid]: (https://github.com/ndmitchell/ghcid)
|
||||||
|
Loading…
Reference in New Issue
Block a user