Skip to content

Commit dc601c1

Browse files
committed
Fix broken links
1 parent aa4cb22 commit dc601c1

19 files changed

Lines changed: 121 additions & 218 deletions

README.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
[![License: CC BY-SA 4.0](https://img.shields.io/badge/License-CC%20BY--SA%204.0-lightgrey.svg)](https://creativecommons.org/licenses/by-sa/4.0/)
44
[![DOI](https://zenodo.org/badge/118425348.svg)](https://zenodo.org/badge/latestdoi/118425348)
55

6-
Materials of [MI-AFP] (*Applied Functional Programming*) course tutorials
6+
Materials of MI-AFP (*Applied Functional Programming*) course tutorials
77

88
## Content
99

@@ -29,7 +29,6 @@ This project is licensed under the Creative Commons Public License [CC BY-SA 4.0
2929
[issue]: https://help.github.com/articles/about-issues/
3030
[pull request]: https://help.github.com/articles/about-pull-requests/
3131
[CC BY-SA 4.0]: https://creativecommons.org/licenses/by-sa/4.0/deed.cs
32-
[MI-AFP]: http://bk.fit.cvut.cz/en/predmety/00/00/00/00/00/00/05/42/92/p5429206.html
3332
[MI-AFP organization]: https://github.com/MI-AFP
3433
[MI-PYT]: https://github.com/cvut/MI-PYT
3534
[LICENSE]: LICENSE

project-guide.md

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,8 +63,6 @@ Important part of a productive environment (and not just for team, even if you a
6363

6464
The most famous version control systems these days are [Git](https://git-scm.com) and [SVN (subversion)](https://subversion.apache.org). Frequently, you can stick with rule that SVN is more suitable for larger and binary files (although there is Git LFS) or when good integration for specific tool is supplied (for example, Enterprise Architect). The core difference is in approach that SVN is centralized and you need to lock part that you want to change, this is where Git will require you resolve merge conflicts. Merging and branches in SVN are more complicated than in Git (this many be subjective).
6565

66-
![Git vs. Subversion (git-tower.com)](https://www.git-tower.com/learn/content/01-git/01-ebook/en/02-desktop-gui/07-appendix/02-from-subversion-to-git/centralized-vs-distributed.png)
67-
6866
For more see: https://www.perforce.com/blog/vcs/git-vs-svn-what-difference
6967

7068
### GitHub, GitLab, and others
@@ -142,7 +140,7 @@ To avoid that, you need some people to do reviews for you and do the review for
142140

143141
As already being said few times, there are services that can be easily integrated with GitHub or GitLab in order to do something with your project automatically when you push commits, create pull request, release new version, or do some other action. The "something" can be actually anything and you can write such "[CI tool](https://en.wikipedia.org/wiki/Continuous_integration)" even by yourself.
144142

145-
* Continuous Integration - This term is used usually when your software is built (all parts are integrated), and tested with automatic tests or at least attempt to execute it is done. The result is that at that moment your code is (at least somehow) working. It is nice to see in your commits history which were working and which were not. For this, you can use [Travis CI](travis-ci.org), [Semaphore CI](https://semaphoreci.com), AppVeyor, and many others.
143+
* Continuous Integration - This term is used usually when your software is built (all parts are integrated), and tested with automatic tests or at least attempt to execute it is done. The result is that at that moment your code is (at least somehow) working. It is nice to see in your commits history which were working and which were not. For this, you can use [Travis CI](https://travis-ci.org), [Semaphore CI](https://semaphoreci.com), AppVeyor, and many others.
146144
* Continuous Inspection - Services that does static inspection of your code, they can verify dependencies of your project, evaluate coverage, and others. One of the examples is [SonarQube](https://www.sonarqube.org), but again there are many similar services.
147145
* Continuous Delivery - If your code passed the build and test phases, it can be deployed somewhere. The deployment can have many realizations, from actual deployment on some web hosting or app server (realized, for example, by service like [Heroku](https://www.heroku.com) or [AWS](https://aws.amazon.com)), though publishing new documentation on [ReadTheDocs](https://readthedocs.org), to uploading installation packages to some registry. All depends what you need, want, and how you will set it up.
148146

references.md

Lines changed: 46 additions & 125 deletions
Original file line numberDiff line numberDiff line change
@@ -2,133 +2,96 @@
22

33
## Rationale
44

5-
* https://dzone.com/articles/why-haskell-matters
6-
* http://programmers.stackexchange.com/questions/279316/what-exactly-makes-the-haskell-type-system-so-revered-vs-say-java/
7-
* https://www.reddit.com/r/haskell/comments/3f4s3r/advantages_and_disadvantages_of_haskell_in/
8-
* https://code.facebook.com/posts/745068642270222/fighting-spam-with-haskell/
9-
* https://www.reddit.com/r/haskell/comments/3h7fqr/what_are_haskellers_critiques_of_scala/
10-
* https://www.reddit.com/r/haskell/comments/3h5og6/i_now_tend_to_think_that_the_concepts_behind_all/
11-
* http://jfeltz.com/posts/2015-08-30-cost-decreasing-software-architecture.html
5+
* https://wiki.haskell.org/Why_Haskell_matters
6+
* https://programmers.stackexchange.com/questions/279316/what-exactly-makes-the-haskell-type-system-so-revered-vs-say-java/
7+
* https://code.facebook.com/posts/745068642270222/fighting-spam-with-haskell/i_now_tend_to_think_that_the_concepts_behind_all/
128
* https://medium.com/@bryanmikaelian/haskell-changed-me-f98ebbb84333
13-
* http://www.leonmergen.com/code/2015/12/04/on-stateless-software-design-what-is-state.html
149
* https://www.futurelearn.com/courses/functional-programming-haskell/1/steps/115453
15-
* http://baatz.io/posts/haskell-in-a-startup/
10+
* https://baatz.io/posts/haskell-in-a-startup/
1611
* https://lexi-lambda.github.io/blog/2016/06/12/four-months-with-haskell/?utm_source=all
17-
* http://www.stephendiehl.com/posts/production.html
18-
* https://www.reddit.com/r/haskell/comments/46jaqx/i_really_want_to_use_haskell_but_im_having/
1912
* https://www.wagonhq.com/blog/haskell-for-industry
20-
* http://www.lihaoyi.com/post/WhatsFunctionalProgrammingAllAbout.html
13+
* https://www.lihaoyi.com/post/WhatsFunctionalProgrammingAllAbout.html
2114
* https://kseo.github.io/posts/2017-01-27-how-i-learned-haskell.html
2215
* https://hackernoon.com/easing-haskells-intimidating-glare-2341095e88aa
2316
* https://www.fpcomplete.com/blog/2016/11/mastering-time-to-market-haskell
2417

2518
## Courses and Fundamental topics
2619

27-
* http://learnyouahaskell.com
28-
* http://haskellbook.com/
29-
* https://www.edx.org/course/introduction-functional-programming-delftx-fp101x-0
30-
* http://book.realworldhaskell.org
31-
* http://dev.stephendiehl.com/hask/
20+
* https://learnyouahaskell.github.io/
21+
* https://haskellbook.com/
22+
* https://i.iinfo.cz/files/root/k/real-world-haskell.pdf
3223
* https://wiki.haskell.org
3324
* https://www.fpcomplete.com/
34-
* http://nptel.ac.in/courses/106106137/
35-
* https://www.reddit.com/r/haskell/comments/3j36wc/haskell_tutorial_collection/
36-
* http://www.happylearnhaskelltutorial.com/
37-
* http://learn.hfm.io/higher_order.html
25+
* https://nptel.ac.in/courses/106106137/
26+
* https://www.happylearnhaskelltutorial.com/
3827
* https://github.com/takenobu-hs/type-introduction-illustrated
39-
* http://stackoverflow.com/questions/15530511/how-to-edit-nth-element-in-a-haskell-list
28+
* https://stackoverflow.com/questions/15530511/how-to-edit-nth-element-in-a-haskell-list
4029
* https://www.youtube.com/playlist?list=PLsAEIIjTPIo83ufYYkaPjUwZUuTe1LoZP
41-
* http://www.scs.stanford.edu/11au-cs240h/notes/
30+
* https://www.scs.stanford.edu/11au-cs240h/notes/
4231
* https://www.futurelearn.com/courses/functional-programming-haskell
43-
* https://m.reddit.com/r/haskell/comments/4ooxqc/does_anyone_have_a_progressive_list_of_beginner/
44-
* http://cheatsheet.codeslower.com/
32+
* https://cheatsheet.codeslower.com/
4533
* https://github.com/warreee/haskell
46-
* http://lotz84.github.io/haskellbyexample/
47-
* http://ndmitchell.com/downloads/slides-drive-by_haskell_contributions-09_jun_2017.pdf
48-
* http://bitemyapp.com
34+
* https://lotz84.github.io/haskellbyexample/
35+
* https://ndmitchell.com/downloads/slides-drive-by_haskell_contributions-09_jun_2017.pdf
36+
* https://bitemyapp.com
4937
* https://kseo.github.io/posts/2017-01-28-build-your-haskell-project-continuously.html
50-
* http://www.atamo.com/articles/how-to-read-pearls-by-richard-bird/
38+
* https://www.atamo.com/articles/how-to-read-pearls-by-richard-bird/
5139
* https://mmhaskell.com/blog/2017/1/30/the-easiest-haskell-idiom
5240

5341
## Problems Solving
5442

55-
* https://www.reddit.com/r/haskell/comments/469n8s/best_practices_for_modifiable_state_in_haskell/
5643
* https://www.youtube.com/watch?v=p-NBJm0kIYU
57-
* http://research.microsoft.com/en-us/um/people/simonpj/papers/financial-contracts/contracts-icfp.htm
58-
* https://www.reddit.com/r/haskell/comments/3ez1k4/how_would_you_design_this_program_in_haskell/
59-
* http://blog.ezyang.com/2010/05/design-patterns-in-haskel/
60-
* https://www.reddit.com/r/haskell/comments/3r8x5m/best_way_to_model_a_deck_of_cards/
61-
* http://ideas.cs.uu.nl/FPTutor/
62-
* http://www.parsonsmatt.org/2015/12/09/exploratory_haskell.html
63-
* http://abailly.github.io/posts/event-source.html
44+
* https://research.microsoft.com/en-us/um/people/simonpj/papers/financial-contracts/contracts-icfp.htm
45+
* https://blog.ezyang.com/2010/05/design-patterns-in-haskel/
46+
* https://www.parsonsmatt.org/2015/12/09/exploratory_haskell.html
47+
* https://abailly.github.io/posts/event-source.html
6448
* https://mmhaskell.com/blog/2017/7/24/getting-the-users-opinion-options-in-haskell
6549

6650
## Specific Topics
6751

6852
* https://hackhands.com/lazy-evaluation-works-haskell/
69-
* http://jelv.is/blog/Haskell-Monads-and-Purity/
70-
* http://brandon.si/code/the-state-monad-a-tutorial-for-the-confused/
71-
* http://www.haskellforall.com/2015/10/polymorphism-for-dummies.html
72-
* http://www.gilmi.xyz/post/2015/08/12/how-haskell-models-io
73-
* https://www.reddit.com/r/haskell/comments/3hqvzi/how_to_accomplish_edits_of_a_large_dataset_in
74-
* https://www.reddit.com/r/haskell/comments/3is2ay/what_gui_libray_do_you_userecommend/
75-
* https://www.reddit.com/r/haskell/comments/3wxggs/whats_the_best_way_to_create_gui_for_haskell/
76-
* http://www.alexeyshmalko.com/2015/haskell-string-types/
77-
* https://www.reddit.com/r/haskell/comments/3u5ryh/fast_way_to_serialize_haskell_objects/
78-
* http://kwangyulseo.com/2014/02/06/multi-line-strings-in-haskell/
79-
* https://github.com/asivitz/Hickory
80-
* https://m.reddit.com/r/haskell/comments/4vh4sg/recommended_way_of_dealing_with_db_associations/
81-
* https://m.reddit.com/r/haskell/comments/4shcin/whats_the_best_way_to_create_prebuilt_binaries_of/
53+
* https://jelv.is/blog/Haskell-Monads-and-Purity/
54+
* https://brandon.si/code/the-state-monad-a-tutorial-for-the-confused/
55+
* https://www.haskellforall.com/2015/10/polymorphism-for-dummies.html
56+
* https://www.alexeyshmalko.com/2015/haskell-string-types/
57+
* https://kwangyulseo.com/2014/02/06/multi-line-strings-in-haskell/
58+
* https://github.com/asivitz/Hickoryrecommended_way_of_dealing_with_db_associations/whats_the_best_way_to_create_prebuilt_binaries_of/
8259
* https://two-wrongs.com/parser-combinators-parsing-for-haskell-beginners
8360
* https://jeltsch.wordpress.com/2016/02/22/generic-programming-in-haskell/
84-
* http://blog.ssanj.net/posts/2014-09-23-A-Simple-Reader-Monad-Example.html
61+
* https://blog.ssanj.net/posts/2014-09-23-A-Simple-Reader-Monad-Example.html
8562
* https://www.athiemann.net/2017/07/02/superrecord.html
8663
* https://www.schoolofhaskell.com/user/fumieval/encoding-objects
87-
* http://www.stephendiehl.com/posts/strings.html
8864
* https://mmhaskell.com/blog/2017/5/15/untangling-haskells-strings
89-
* https://medium.com/@jonathangfischoff/the-partial-options-monoid-pattern-31914a71fc67
90-
* http://vaibhavsagar.com/blog/2017/05/29/imperative-haskell/
65+
* https://vaibhavsagar.com/blog/2017/05/29/imperative-haskell/
9166
* https://hackernoon.com/type-class-patterns-and-anti-patterns-efd045c5af66
9267
* https://philipnilsson.github.io/Badness10k/posts/2017-05-07-escaping-hell-with-monads.html
93-
* https://medium.com/@sjsyrek/five-minutes-to-monoid-fe6f364d0bba
94-
* http://foswiki.cs.uu.nl/foswiki/pub/Swierstra/ResearchTalks/tree-oriented-programming-slides.pdf
9568
* https://hackernoon.com/typeclass-instance-selection-fea1068920e6
9669
* https://two-wrongs.com/dynamic-dispatch-in-haskell-how-to-make-code-extendable
9770
* https://e.xtendo.org/monad#1
98-
* http://www.cs.nott.ac.uk/~pszgmh/fold.pdf
99-
* http://www.parsonsmatt.org/2017/02/17/ooph_data_inheritance.html
71+
* https://www.parsonsmatt.org/2017/02/17/ooph_data_inheritance.html
10072

10173
### Lenses
10274

103-
* http://www.haskellforall.com/2013/05/program-imperatively-using-haskell.html
104-
* https://m.reddit.com/r/haskell/comments/4s84tc/examples_of_why_lens_is_useful/
105-
* http://www.mchaver.com/posts/2017-07-12-lens-tutorial-1.html
75+
* https://www.haskellforall.com/2013/05/program-imperatively-using-haskell.html
10676

10777
### Databases
10878

109-
* http://stackoverflow.com/questions/104960/are-there-any-orm-tools-for-haskell
79+
* https://stackoverflow.com/questions/104960/are-there-any-orm-tools-for-haskell
11080
* https://github.com/begriffs/postgrest/blob/master/README.md
11181

11282
### GUI
11383

11484
* https://begriffs.com/posts/2016-07-27-tikhon-on-frp.html
11585
* https://github.com/gelisam/frp-zoo
116-
* https://www.stackbuilders.com/tutorials/haskell/gui-application/
11786

11887
## Tooling
11988

12089
* https://www.haskell.org/hoogle/
12190
* https://github.com/alanz/HaRe
122-
* https://www.fpcomplete.com/
123-
* https://www.reddit.com/r/haskell/comments/3ni7fb/is_there_any_ide_or_plugin_for_haskell_that_does/
124-
* https://www.reddit.com/r/haskell/comments/3oa0ht/is_there_a_simple_way_to_automatically_visualize/
125-
* https://www.reddit.com/r/haskell/comments/3voe9p/debugging_haskell_programs/
12691
* https://functor.tokyo/blog/2017-07-28-ghc-warnings-you-should-enable
12792

12893
### VIM
12994

130-
* http://www.stephendiehl.com/posts/vim_haskell.html
131-
* http://blog.mno2.org/posts/2011-11-17-vim-plugins-for-haskell-programmers.html
13295
* https://github.com/eagletmt/neco-ghc
13396
* https://github.com/begriffs/haskell-vim-now
13497

@@ -141,82 +104,40 @@
141104

142105
## Libraries
143106
* https://github.com/krispo/awesome-haskell
144-
* http://haskelliseasy.readthedocs.io/en/latest/
145-
* http://www.haskellforall.com/2015/08/state-of-haskell-ecosystem-august-2015.html?m=1
146-
* http://projects.haskell.org/diagrams/doc/quickstart.html
107+
* https://haskelliseasy.readthedocs.io/en/latest/
108+
* https://www.haskellforall.com/2015/08/state-of-haskell-ecosystem-august-2015.html?m=1
109+
* https://projects.haskell.org/diagrams/doc/quickstart.html
147110

148111
## Architecture
149112

150-
* http://stackoverflow.com/questions/3077866/large-scale-design-in-haskell
151-
* http://stackingyourmonads.benkolera.com/#/
152-
* https://dshevchenko.biz/hs-research/Haskell-in-the-Large.pdf
153-
154-
## Web Development
155-
156-
* https://www.stackbuilders.com/tutorials/functional-full-stack/purescript-bridge/
113+
* https://stackoverflow.com/questions/3077866/large-scale-design-in-haskell
157114

158115
### Server Side
159116

160-
* https://www.slant.co/topics/727/~haskell-web-frameworks-for-building-restful-web-services
161-
* http://stackoverflow.com/questions/5645168/comparing-haskells-snap-and-yesod-web-frameworks
162-
* http://zyghost.com/articles/Renderable.html
117+
* https://stackoverflow.com/questions/5645168/comparing-haskells-snap-and-yesod-web-frameworks
118+
* https://zyghost.com/articles/Renderable.html
163119
* https://robots.thoughtbot.com/a-rest-api-with-haskell-and-snap
164120

165121
### Client Side
166122

167-
* http://haste-lang.org/
123+
* https://haste-lang.org/
168124
* https://github.com/ghcjs/ghcjs
169-
* https://www.airpair.com/haskell/posts/haskell-tutorial-introduction-to-web-apps
170-
* http://ifeanyi.co/posts/client-side-haskell/
125+
* https://ifeanyi.co/posts/client-side-haskell/
171126
* https://speakerdeck.com/mkscrg/electron-react-and-haskell-oh-my
172-
* http://stackoverflow.com/questions/9210412/recommended-reading-tutorials-to-understand-reactive-banana-frp-library
173-
174-
## Examples and Projects
175-
176-
* https://m.reddit.com/r/haskell/comments/571tu3/what_are_some_good_open_source_projects_for/
177-
* http://utdemir.com/posts/modeling-the-hardest-logic-puzzle-ever-in-haskell.html
178-
* http://zyghost.com/articles/Renderable.html
179-
* https://www.reddit.com/r/haskell/comments/3l2b7q/good_midsized_projects_for_learning_haskell/
180-
* https://gist.github.com/ToJans
181-
* https://www.reddit.com/r/haskell/comments/3pqdln/large_applications_written_using_frp/
182-
* https://github.com/divipp/lensref/wiki
183-
* https://www.youtube.com/watch?v=sl2zo7tzrO8
184-
* https://lotz84.github.io/haskellbyexample/
185-
* https://m.reddit.com/r/haskell/comments/557fx1/how_to_model_road_intersections/
186-
* http://bitemyapp.com/posts/2015-04-26-installing-a-haskell-game.html
187-
* https://github.com/pmikkelsen/game-of-life
188-
* https://github.com/rjohnsondev/haskellshop
189-
* https://github.com/google/codeworld
190-
* https://github.com/jtdaugherty/brick
191-
* https://github.com/lunky/IntroToFunctionalProgramming
192-
* http://www.kovach.me/posts/2014-08-09-twitter.html
193-
127+
* https://stackoverflow.com/questions/9210412/recommended-reading-tutorials-to-understand-reactive-banana-frp-library
194128

195129
## Style
196130

197-
* http://stackoverflow.com/questions/7746894/are-there-pronounceable-names-for-common-haskell-operators
198-
* https://www.reddit.com/r/haskell/comments/3ple0s/google_styleguide_for_haskell/
199-
* https://m.reddit.com/r/haskell/comments/578amb/haskell_code_standards/
131+
* https://stackoverflow.com/questions/7746894/are-there-pronounceable-names-for-common-haskell-operators
200132

201133
## Advanced
202134

203-
* https://ocharles.org.uk/blog/pages/2014-12-01-24-days-of-ghc-extensions.html
204-
* http://bartoszmilewski.com/2014/10/28/category-theory-for-programmers-the-preface/
205-
* https://www.reddit.com/r/haskell/comments/3m9nyp/category_theory_the_essence_of_interfacebased/
206-
* https://www.reddit.com/r/haskell/comments/3k17md/is_there_anything_more_powerful_than_monads/
207-
* https://www.reddit.com/r/haskell/comments/3lnhkp/monad_and_comonad_insights/
208-
* http://fvisser.nl/post/2013/okt/1/fclabels-2.0.html
209-
* http://www.parsonsmatt.org/2015/11/15/template_haskell.html
210-
* https://www.reddit.com/r/haskell/comments/3vfrik/can_i_put_constraints_on_type_constructors/
211-
* https://www.reddit.com/r/haskell/comments/3wxh7a/transducers_why_and_how/
212-
* https://www.reddit.com/r/haskell/comments/3wkofz/traversal_of_lens_with_maybe_fields/
135+
* https://www.parsonsmatt.org/2015/11/15/template_haskell.html
213136
* https://wiki.haskell.org/GADTs_for_dummies
214-
* https://m.reddit.com/r/haskell/comments/4sihcv/haskell_the_bad_parts/
215137
* https://blog.jle.im/entry/io-monad-considered-harmful.html
216-
* https://m.reddit.com/r/haskell/comments/4prbba/what_can_i_do_with_comaybe/
217-
* http://www.haskellforall.com/2016/02/auto-generate-command-line-interface.html
218-
* http://www.haskellforall.com/2016/02/from-mathematics-to-map-reduce.html
138+
* https://www.haskellforall.com/2016/02/auto-generate-command-line-interface.html
139+
* https://www.haskellforall.com/2016/02/from-mathematics-to-map-reduce.html
219140

220141
## Fun
221142

222-
* http://www.willamette.edu/~fruehr/haskell/evolution.html
143+
* https://www.willamette.edu/~fruehr/haskell/evolution.html

0 commit comments

Comments
 (0)