paf31 / purescript-book

Sources for the PureScript book
454 stars 370 forks source link

Outdated chapters #97

Closed masterdezign closed 7 years ago

masterdezign commented 7 years ago

Function double introduced in Chapter 2.11 does not work anymore in PSCi.

$ pulp psci
PSCi, version 0.11.6
Type :? for help

import Prelude
> let double x = x * 2
(line 1, column 20):
unexpected end of input
expecting ., {, ::, infix expression, "where", indentation at column 5 or "in"
Declarations in PSCi no longer require "let", as of version 0.11.0
masterdezign commented 7 years ago

Chapter 3 is also outdated. Trying to reproduce steps from page 16:

$ cd chapter3
$ bower update
$ pulp build

* Building project in /Users/master/src/purescript-book/exercises/chapter3
Error 1 of 21:

  at bower_components/purescript-arrays/src/Data/Array.purs line 168, column 1 - line 168, column 1

    Unable to parse module:
    unexpected comma in constraints.

Class constraints in type annotations can no longer be grouped in parentheses.
Each constraint should now be separated by `=>`, for example:
    `(Applicative f, Semigroup a) => a -> f a -> f a`
  would now be written as:
    `Applicative f => Semigroup a => a -> f a -> f a`.

    expecting indentation past column 1, (, qualifier, proper name, operator or ->

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

Error 2 of 21:

  at bower_components/purescript-arrays/src/Data/Array/ST.purs line 34, column 34 - line 34, column 34

    Unable to parse module:
    The `*` symbol is no longer used for the kind of types.
  The new equivalent is the named kind `Type`.

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

Error 3 of 21:

  at bower_components/purescript-console/src/Control/Monad/Eff/Console.purs line 13, column 1 - line 13, column 1

    Unable to parse module:
    The `!` symbol is no longer used for the kind of effects.
  The new equivalent is the named kind `Effect`, defined in `Control.Monad.Eff` in the `purescript-eff` library.

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

Error 4 of 21:

  at bower_components/purescript-eff/src/Control/Monad/Eff.purs line 24, column 32 - line 24, column 32

    Unable to parse module:
    The `!` symbol is no longer used for the kind of effects.
  The new equivalent is the named kind `Effect`, defined in `Control.Monad.Eff` in the `purescript-eff` library.

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

Error 5 of 21:

  at bower_components/purescript-foldable-traversable/src/Data/Traversable.purs line 59, column 1 - line 59, column 1

    Unable to parse module:
    unexpected comma in constraints.

Class constraints in type annotations can no longer be grouped in parentheses.
Each constraint should now be separated by `=>`, for example:
    `(Applicative f, Semigroup a) => a -> f a -> f a`
  would now be written as:
    `Applicative f => Semigroup a => a -> f a -> f a`.

    expecting indentation past column 1, (, qualifier, proper name, operator or ->

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

Error 6 of 21:

  at bower_components/purescript-foldable-traversable/src/Data/Foldable.purs line 99, column 1 - line 99, column 1

    Unable to parse module:
    unexpected comma in constraints.

Class constraints in type annotations can no longer be grouped in parentheses.
Each constraint should now be separated by `=>`, for example:
    `(Applicative f, Semigroup a) => a -> f a -> f a`
  would now be written as:
    `Applicative f => Semigroup a => a -> f a -> f a`.

    expecting indentation past column 1, operator or ->
    ambiguous use of a left associative operator

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

Error 7 of 21:

  at bower_components/purescript-foldable-traversable/src/Data/Bitraversable.purs line 65, column 1 - line 65, column 1

    Unable to parse module:
    unexpected comma in constraints.

Class constraints in type annotations can no longer be grouped in parentheses.
Each constraint should now be separated by `=>`, for example:
    `(Applicative f, Semigroup a) => a -> f a -> f a`
  would now be written as:
    `Applicative f => Semigroup a => a -> f a -> f a`.

    expecting indentation past column 1, (, qualifier, proper name, operator or ->

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

Error 8 of 21:

  at bower_components/purescript-foldable-traversable/src/Data/Bifoldable.purs line 110, column 1 - line 110, column 1

    Unable to parse module:
    unexpected comma in constraints.

Class constraints in type annotations can no longer be grouped in parentheses.
Each constraint should now be separated by `=>`, for example:
    `(Applicative f, Semigroup a) => a -> f a -> f a`
  would now be written as:
    `Applicative f => Semigroup a => a -> f a -> f a`.

    expecting indentation past column 1, operator or ->
    ambiguous use of a left associative operator

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

Error 9 of 21:

  at bower_components/purescript-lazy/src/Data/Lazy.purs line 22, column 31 - line 22, column 31

    Unable to parse module:
    The `*` symbol is no longer used for the kind of types.
  The new equivalent is the named kind `Type`.

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

Error 10 of 21:

  at bower_components/purescript-lists/src/Data/List.purs line 149, column 1 - line 149, column 1

    Unable to parse module:
    unexpected comma in constraints.

Class constraints in type annotations can no longer be grouped in parentheses.
Each constraint should now be separated by `=>`, for example:
    `(Applicative f, Semigroup a) => a -> f a -> f a`
  would now be written as:
    `Applicative f => Semigroup a => a -> f a -> f a`.

    expecting indentation past column 1, (, qualifier, proper name, operator or ->

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

Error 11 of 21:

  at bower_components/purescript-newtype/src/Data/Newtype.purs line 55, column 1 - line 55, column 1

    Unable to parse module:
    unexpected comma in constraints.

Class constraints in type annotations can no longer be grouped in parentheses.
Each constraint should now be separated by `=>`, for example:
    `(Applicative f, Semigroup a) => a -> f a -> f a`
  would now be written as:
    `Applicative f => Semigroup a => a -> f a -> f a`.

    expecting indentation past column 1, (, qualifier, proper name, operator or ->

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

Error 12 of 21:

  at bower_components/purescript-nonempty/src/Data/NonEmpty.purs line 48, column 1 - line 48, column 1

    Unable to parse module:
    unexpected comma in constraints.

Class constraints in type annotations can no longer be grouped in parentheses.
Each constraint should now be separated by `=>`, for example:
    `(Applicative f, Semigroup a) => a -> f a -> f a`
  would now be written as:
    `Applicative f => Semigroup a => a -> f a -> f a`.

    expecting indentation past column 1, operator or ->
    ambiguous use of a left associative operator

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

Error 13 of 21:

  at bower_components/purescript-prelude/src/Data/Unit.purs line 14, column 1 - line 14, column 1

    Unable to parse module:
    The `*` symbol is no longer used for the kind of types.
  The new equivalent is the named kind `Type`.

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

Error 14 of 21:

  at bower_components/purescript-prelude/src/Data/Ord.purs line 159, column 1 - line 159, column 1

    Unable to parse module:
    unexpected comma in constraints.

Class constraints in type annotations can no longer be grouped in parentheses.
Each constraint should now be separated by `=>`, for example:
    `(Applicative f, Semigroup a) => a -> f a -> f a`
  would now be written as:
    `Applicative f => Semigroup a => a -> f a -> f a`.

    expecting indentation past column 1, operator or ->
    ambiguous use of a left associative operator

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

Error 15 of 21:

  at bower_components/purescript-prelude/src/Data/EuclideanRing.purs line 79, column 1 - line 79, column 1

    Unable to parse module:
    unexpected comma in constraints.

Class constraints in type annotations can no longer be grouped in parentheses.
Each constraint should now be separated by `=>`, for example:
    `(Applicative f, Semigroup a) => a -> f a -> f a`
  would now be written as:
    `Applicative f => Semigroup a => a -> f a -> f a`.

    expecting indentation past column 1, operator or ->
    ambiguous use of a left associative operator

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

Error 16 of 21:

  at bower_components/purescript-prelude/src/Data/Eq.purs line 69, column 1 - line 69, column 1

    Unable to parse module:
    unexpected comma in constraints.

Class constraints in type annotations can no longer be grouped in parentheses.
Each constraint should now be separated by `=>`, for example:
    `(Applicative f, Semigroup a) => a -> f a -> f a`
  would now be written as:
    `Applicative f => Semigroup a => a -> f a -> f a`.

    expecting indentation past column 1, operator or ->
    ambiguous use of a left associative operator

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

Error 17 of 21:

  at bower_components/purescript-proxy/src/Type/Proxy.purs line 55, column 21 - line 55, column 21

    Unable to parse module:
    The `*` symbol is no longer used for the kind of types.
  The new equivalent is the named kind `Type`.

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

Error 18 of 21:

  at bower_components/purescript-st/src/Control/Monad/ST.purs line 12, column 29 - line 12, column 29

    Unable to parse module:
    The `*` symbol is no longer used for the kind of types.
  The new equivalent is the named kind `Type`.

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

Error 19 of 21:

  at bower_components/purescript-strings/src/Data/String/Regex.purs line 29, column 1 - line 29, column 1

    Unable to parse module:
    The `*` symbol is no longer used for the kind of types.
  The new equivalent is the named kind `Type`.

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

Error 20 of 21:

  at bower_components/purescript-tuples/src/Data/Tuple.purs line 176, column 1 - line 176, column 1

    Unable to parse module:
    unexpected comma in constraints.

Class constraints in type annotations can no longer be grouped in parentheses.
Each constraint should now be separated by `=>`, for example:
    `(Applicative f, Semigroup a) => a -> f a -> f a`
  would now be written as:
    `Applicative f => Semigroup a => a -> f a -> f a`.

    expecting indentation past column 1, (, qualifier, proper name, operator or ->

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

Error 21 of 21:

  at bower_components/purescript-unfoldable/src/Data/Unfoldable.purs line 69, column 1 - line 69, column 1

    Unable to parse module:
    unexpected comma in constraints.

Class constraints in type annotations can no longer be grouped in parentheses.
Each constraint should now be separated by `=>`, for example:
    `(Applicative f, Semigroup a) => a -> f a -> f a`
  would now be written as:
    `Applicative f => Semigroup a => a -> f a -> f a`.

    expecting indentation past column 1, (, qualifier, proper name, operator or ->

  See https://github.com/purescript/documentation/blob/master/errors/ErrorParsingModule.md for more information,
  or to contribute content related to this error.

* ERROR: Subcommand terminated with exit code 1
paf31 commented 7 years ago

Please use the 0.11 branch for now. The book is being updated.