Skip to content
This repository has been archived by the owner on Jan 17, 2020. It is now read-only.

Commit

Permalink
typos
Browse files Browse the repository at this point in the history
  • Loading branch information
jdegoes committed Aug 11, 2016
1 parent 9566a22 commit bb69b01
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ overlapping effects.

While the effect system is undoubtedly useful, there are cases where it's more
of a hindrance — where it doesn't make reasoning about code easier, but instead,
merely adds a ton of boilerplate and semantically meaningless labels get
threaded through endless stacks of functions.
merely adds a ton of boilerplate, as semantically meaningless or overlapping
labels get threaded through endless stacks of functions.

In those cases, `IO` is here to the rescue!

Expand All @@ -30,13 +30,13 @@ no runtime overhead or performance penalty for `IO`.
`IO` only has one function, which should only be used in your `main`:

```haskell
runIO :: forall a. IO a -> AffIO a
runIO :: forall a. IO a -> Aff (infinity :: INFINITY) a
```

This converts an `IO` into an `Aff`, which you can then "convert" into a
runnable `Eff` using `launchAff` or `runAff`.

The effect row is closed, which is intentionally because `INFINITY` represents
The effect row is closed, which is intentional because `INFINITY` represents
all possible effects. This will help ensure you only call `runIO` at the top
level of your program.

Expand Down

0 comments on commit bb69b01

Please sign in to comment.