From 702463b27e33036e1770f05018ea5303c43cbb99 Mon Sep 17 00:00:00 2001 From: Gerard Ryan Date: Sun, 11 Dec 2016 17:40:00 +0000 Subject: [PATCH] =?UTF-8?q?=F0=9F=93=9D=20Fix=20broken=20links?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes #1. --- Contrib-Guidelines.md | 2 +- FFI-tips.md | 2 +- Optimizations-for-uncurried-functions.md | 3 +-- README.md | 13 ++++++------- ecosystem/PureScript-Meetups.md | 11 +++++------ errors/ConflictingImports.md | 2 +- errors/CycleInDeclaration.md | 4 ++-- errors/NoInstanceFound.md | 2 +- guides/eff.md | 3 +-- guides/ffi.md | 3 +-- language/Values.md | 4 ++-- misc/Wikipedia-Page-Proposal.md | 2 +- 12 files changed, 23 insertions(+), 28 deletions(-) diff --git a/Contrib-Guidelines.md b/Contrib-Guidelines.md index 3b5bdb88..f5350e54 100644 --- a/Contrib-Guidelines.md +++ b/Contrib-Guidelines.md @@ -4,6 +4,6 @@ - Projects should be **up to date**. Specifically they should build against the current core library set (up to a reasonable time window), or be identified as deprecated or seeking a new maintainer. - Projects should be **documented**. Typically, this just involves running `psc-docs` as part of the build process, but `contrib` libraries should also strive to document every exported type and function with some combination of text and examples. -Contrib libraries should try to follow the [Style Guide](Style-Guide) as closely as possible. +Contrib libraries should try to follow the [Style Guide](Style-Guide.md) as closely as possible. Maintainers who do not follow these guidelines will be asked to move their repositories out of `purescript-contrib`. diff --git a/FFI-tips.md b/FFI-tips.md index ce963fd7..b8bb020b 100644 --- a/FFI-tips.md +++ b/FFI-tips.md @@ -132,7 +132,7 @@ foreign import myEff :: forall eff. Eff (myEff :: MYEFF | eff) SomeType ``` ## FFI Libraries -There are a number of libraries for easing the process or writing FFI code. @paf31 wrote an [introduction](https://gist.github.com/paf31/8e9177b20ee920480fbc#day-3---purescript-easy-ffi-and-purescript-oo-ffi) to these in his 2014 ["24 Days of PureScript"](https://gist.github.com/paf31/8e9177b20ee920480fbc). Note that it shows the now deprecated (as of PureScript 0.7.0) inline FFI. +There are a number of libraries for easing the process or writing FFI code. @paf31 wrote an [introduction](https://github.com/paf31/24-days-of-purescript-2014/blob/master/3.markdown) to these in his 2014 ["24 Days of PureScript"](https://gist.github.com/paf31/8e9177b20ee920480fbc). Note that it shows the now deprecated (as of PureScript 0.7.0) inline FFI. **TODO** Performance and other considerations such as Browserify (`require`ing modules dynamically) diff --git a/Optimizations-for-uncurried-functions.md b/Optimizations-for-uncurried-functions.md index 900ceadc..399f768f 100644 --- a/Optimizations-for-uncurried-functions.md +++ b/Optimizations-for-uncurried-functions.md @@ -1,4 +1,4 @@ -If you want to avoid curried functions in performance-sensitive parts of your code, the compiler has special optimizations built in for all the `mkFn*` and `runFn*` functions defined in [Data.Function](https://pursuit.purescript.org/packages/purescript-functions/0.1.0/docs/Data.Function) ([purescript-functions](https://github.com/purescript/purescript-functions)) +If you want to avoid curried functions in performance-sensitive parts of your code, the compiler has special optimizations built in for all the `mkFn*` and `runFn*` functions defined in [Data.Function.Uncurried](https://pursuit.purescript.org/packages/purescript-functions/2.0.0/docs/Data.Function.Uncurried) ([purescript-functions](https://github.com/purescript/purescript-functions)) For example, the PureScript optimizer will turn this: @@ -25,4 +25,3 @@ into ```js addUncurried(1, 2, 3); ``` - diff --git a/README.md b/README.md index bce5a18f..32e65ded 100644 --- a/README.md +++ b/README.md @@ -20,18 +20,17 @@ PureScript is a small strongly, statically typed compile-to-JS language with a n ## Libraries -- [Recommended Libraries](Recommended-Libraries.md) +- [Recommended Libraries](ecosystem/Recommended-Libraries.md) - [Style Guide](Style-Guide.md) - [24 Days of PureScript 2014](https://gist.github.com/paf31/8e9177b20ee920480fbc) ## Tools -- [Editor and tool support](Editor-and-tool-support.md) +- [Editor and tool support](ecosystem/Editor-and-tool-support.md) - [Pursuit search engine](http://pursuit.purescript.org) ## Development Environments -- [PureScript and Docker](PureScript-and-Docker.md) - [PureScript and NixOS](https://pr06lefs.wordpress.com/2015/01/11/get-started-with-purescript-on-nixos/) ## Articles @@ -45,20 +44,20 @@ PureScript is a small strongly, statically typed compile-to-JS language with a n ## Talks/Meetups -- [PureScript Presentations](PureScript-Presentations.md) -- [PureScript Meetups](Purescript-Meetups.md) +- [PureScript Presentations](ecosystem/PureScript-Presentations.md) +- [PureScript Meetups](ecosystem/Purescript-Meetups.md) ## Language Guides The [PureScript Book](https://leanpub.com/purescript/read) is the recommended approach to learning the language, since it covers more material in greater depth. There is also a language guide, which is more useful as a reference: -- [Language Guide](language/Language-Guide.md) +- [Language Reference](language/README.md) ## Related Languages - [Related Projects](Related-Projects.md) - [Differences from Haskell](language/Differences-from-Haskell.md) -- [Alternate compiler backends](Alternate-backends.md) for various target languages +- [Alternate compiler backends](ecosystem/Alternate-backends.md) for various target languages ## TL;DR * [Install PureScript](http://www.purescript.org/download/) diff --git a/ecosystem/PureScript-Meetups.md b/ecosystem/PureScript-Meetups.md index 6de0a22c..b5456814 100644 --- a/ecosystem/PureScript-Meetups.md +++ b/ecosystem/PureScript-Meetups.md @@ -18,7 +18,7 @@ Write down questions you'd like answered about topics to give to speakers. [PureScript Community Playlist on Youtube](https://www.youtube.com/playlist?list=PLQDWDZypikvGSNomRZNzBF2ARFLgW4TOV) -What do you wanna learn? Wanna present your topic? [Email us](purescript.community@gmail.com) or DM @alex_berg on Twitter! Alternatively vote for topics on [AllOurIdeas.org/purescript-unscripted-topics](http://www.allourideas.org/purescript-unscripted-topics/) +What do you wanna learn? Wanna present your topic? [Email us](mailto:purescript.community@gmail.com) or DM @alex_berg on Twitter! Alternatively vote for topics on [AllOurIdeas.org/purescript-unscripted-topics](http://www.allourideas.org/purescript-unscripted-topics/) ### Schedule @@ -40,7 +40,7 @@ Anyone is welcome to intro their PureScript project (including written in Haskel What do you wanna hack? Wanna pitch your project? -[Email us](purescript.community@gmail.com) or DM @alex_berg on Twitter? +[Email us](mailto:purescript.community@gmail.com) or DM @alex_berg on Twitter? ### Schedule @@ -81,8 +81,7 @@ Currently owned by Alex Berg, so requires him to start and host. (We need a back Join from PC, Mac, Linux, iOS or Android: https://zoom.us/j/118616185 Or iPhone one-tap (US Toll): +16465588656,118616185# or +14086380968,118616185# -Or Telephone: -Dial: +1 646 558 8656 (US Toll) or +1 408 638 0968 (US Toll) -Meeting ID: 118 616 185 +Or Telephone: +Dial: +1 646 558 8656 (US Toll) or +1 408 638 0968 (US Toll) +Meeting ID: 118 616 185 International numbers available: https://zoom.us/zoomconference?m=w4bACzc4b_ocxEMimJTL9bn04r0jrDVv - diff --git a/errors/ConflictingImports.md b/errors/ConflictingImports.md index 2f33ece7..57aaba59 100644 --- a/errors/ConflictingImports.md +++ b/errors/ConflictingImports.md @@ -1 +1 @@ -see https://github.com/purescript/purescript/wiki/Error-Code-ConflictingImport, perhaps? +see [ConflictingImport](ConflictingImport.md), perhaps? diff --git a/errors/CycleInDeclaration.md b/errors/CycleInDeclaration.md index 4f960c82..869cc4ed 100644 --- a/errors/CycleInDeclaration.md +++ b/errors/CycleInDeclaration.md @@ -2,6 +2,6 @@ You likely encountered this because you were porting some lazy Haskell code to P Purescript is strictly evaluated so such constructs are a compile error. -If you are trying to implement a recursive parser in PureScript you might find -[the fix function](http://pursuit.purescript.org/packages/purescript-string-parsers/0.6.3/docs/Text.Parsing.StringParser.Combinators#v:fix) and this post on +If you are trying to implement a recursive parser in PureScript you might find +[the fix function](http://pursuit.purescript.org/packages/purescript-string-parsers/2.0.0/docs/Text.Parsing.StringParser.Combinators#v:fix) and this post on [recursive parsing in PureScript](https://github.com/Thimoteus/SandScript/wiki/2.-Parsing-recursively) helpful. diff --git a/errors/NoInstanceFound.md b/errors/NoInstanceFound.md index 67fcb867..28b2330a 100644 --- a/errors/NoInstanceFound.md +++ b/errors/NoInstanceFound.md @@ -20,7 +20,7 @@ A possible fix is to add an instance for the relevant type. Following from the e This error can also arise in situations where there is no problem with your code, because the compiler is not yet capable of inferring more complex constraints. In these cases, the solution is to add a type signature. -Finally, this error can occur if your code fails to propagate `Partial` constraints properly. For an introduction to the `Partial` type class, please see [The Partial type class](../language/The-Partial-type-class.md). +Finally, this error can occur if your code fails to propagate `Partial` constraints properly. For an introduction to the `Partial` type class, please see [The Partial type class](../guides/The-Partial-type-class.md). --- diff --git a/guides/eff.md b/guides/eff.md index 609ff6f3..589389b1 100644 --- a/guides/eff.md +++ b/guides/eff.md @@ -217,7 +217,7 @@ We can therefore implement a simple action as follows: foreign import incrCounter :: forall e. Eff (counter :: COUNTER | e) Number ``` -and in the corresponding [native module](../ffi/): +and in the corresponding [native module](ffi.md): ```javascript exports.incrCounter = function() { @@ -351,4 +351,3 @@ var collatz = function (n) { #### Conclusion The `Eff` monad provides a way to use native effects in PureScript, in such a way that different types of effects can be interleaved, and such that the generated Javascript is relatively simple. - diff --git a/guides/ffi.md b/guides/ffi.md index 22b79315..f81813d0 100644 --- a/guides/ffi.md +++ b/guides/ffi.md @@ -202,7 +202,7 @@ Notice that the `calculateInterest` functions defined above were _pure_: they ha The PureScript function type `a -> b` does not allow for side-effects, so it would be incorrect to assign a function type to a Javascript computation with side-effects. The correct approach in this case is to use the `Eff` type constructor, defined in the `purescript-eff` package, to assign a type to the computation. -The `Eff` type constructor and its usage is documented [on the wiki](https://github.com/purescript/purescript/wiki/Handling-Native-Effects-with-the-Eff-Monad). +The `Eff` type constructor and its usage is documented [on the eff page](eff.md). #### Santizing Foreign Data With Data.Foreign @@ -233,4 +233,3 @@ Developers who define their own foreign data types should take care to document I have hopefully shown that interoperating with Javascript is simple in both directions, once a few small implementation details are understood. You should now be able to wrap your Javascript libraries for use in PureScript, and vice versa. The [PureScript book](https://leanpub.com/purescript/read#leanpub-auto-the-foreign-function-interface) contains more information on the FFI, and plenty of examples and exercises for any interested readers. - diff --git a/language/Values.md b/language/Values.md index 27a4381e..dd7b94c8 100644 --- a/language/Values.md +++ b/language/Values.md @@ -157,7 +157,7 @@ This is equivalent to: ## Operators -Operators in PureScript are just regular functions. The [`Prelude`](https://github.com/purescript/purescript/tree/master/prelude) defines a number of operators which correspond to JavaScript operators. +Operators in PureScript are just regular functions. The [`Prelude`](https://github.com/purescript/purescript-prelude) defines a number of operators which correspond to JavaScript operators. ## Unary operators @@ -371,4 +371,4 @@ maybeSum a b = let result = n + m in return result ``` -Note: (>>=) is the `bind` function for the `Bind` type as defined in the [Prelude package](https://pursuit.purescript.org/packages/purescript-prelude/0.1.3/docs/Prelude#t:Bind). +Note: (>>=) is the `bind` function for the `Bind` type as defined in the [Prelude package](https://pursuit.purescript.org/packages/purescript-prelude/2.1.0/docs/Prelude#t:Bind). diff --git a/misc/Wikipedia-Page-Proposal.md b/misc/Wikipedia-Page-Proposal.md index 1e605e5b..545fe222 100644 --- a/misc/Wikipedia-Page-Proposal.md +++ b/misc/Wikipedia-Page-Proposal.md @@ -20,7 +20,7 @@ The PureScript community maintains a collection of standard libraries, which aim In 2015, PureScript took part in the Google Summer of Code program, resulting in two successful projects - a database of PureScript libraries and documentation with type-directed search, and the addition of an exhaustivity and redundancy analysis pass to the compiler. -[PureScript Conf 2015](https://github.com/purescript/purescript/wiki/PureScript-Conf-2015) was the first conference devoted to the PureScript language, with the [2016 edition](PureScript-Conf-2016) scheduled for May 2016. A [book](https://leanpub.com/purescript.md) on the language was released in 2015. +[PureScript Conf 2015](https://github.com/purescript/purescript/wiki/PureScript-Conf-2015) was the first conference devoted to the PureScript language, with the [2016 edition](https://github.com/purescript/purescript/wiki/PureScript-Conf-2016) scheduled for May 2016. A [book](https://leanpub.com/purescript.md) on the language was released in 2015. ## Examples