On this page
More information about the code
Article of this project : https://blog.darkwood.com/article/php-railway-flow-based-programming
Slides of this project : https://speakerdeck.com/matyo91/php-railway-flow-based-programming
Video of this project : https://www.youtube.com/watch?v=mxxdhGsaIjY
Railway Flow Based Programming with Elixir from Anton Mishchuk
- Presentation in an article : https://anton-mishchuk.medium.com/railway-flow-based-programming-with-flowex-ef04fd338e41
- Presentation with video : https://www.youtube.com/watch?v=TLvbP8bt2HA
- Advanced implementation with multiple programming languages : https://medium.com/@anton.mishchuk/multi-language-flowex-components-fdda11d34744
- Presentation in an article : https://fr.slideshare.net/AntonMishchuk/multilanguage-fbp-with-flowex
- Implementation in Elixir : https://github.com/antonmi/flowex
- Implementation in Elixir with multiple programming languages : https://github.com/antonmi/multi_flowex
Flow Based Programming from J. Paul Rodker Morrison
- concept : https://jpaulm.github.io/fbp
- Implementation in javascript from Henri Bergius : https://noflojs.org
- Implementation in PHP from Henri Bergius : https://github.com/phpflo/phpflo
Railway Oriented Programming
- Presentation from Sarmiento Calle : https://www.youtube.com/watch?v=RNTo7Y2wMyI
- Presentation from Scott Wlaschin : https://fr.slideshare.net/ScottWlaschin/railway-oriented-programming
- Railway Oriented Programming: C# Edition - Tama Waddell : https://www.youtube.com/watch?v=45yk2nuRjj8
- Implementation in PHP from Turanct : https://github.com/turanct/railway
- Implementation in PHP from Monsieur Luge : https://github.com/monsieurluge/result
Coroutines in PHP
- Nikita Popov talk about Coroutines in PHP : https://nikic.github.io/2012/12/22/Cooperative-multitasking-using-coroutines-in-PHP.html
- 100% Asynchrone - 0% Callback en PHP - Joel Wurtz - PHP Tour Montpellier 2018 : https://www.youtube.com/watch?v=g1UgU5KMyMA
- Générateurs et Programmation Asynchrone: Mode d’emploi - Benoit Viguier - Forum PHP 2018 : https://www.youtube.com/watch?v=7TvIIt4c8uY
- En route vers le multi-tâche ! - Julien Bianchi - PHP Tour 2016 https://www.youtube.com/watch?v=FOeGfSbKkuY
- Differences between Multiprocessing, Multithreading and Coroutines execution in PHP : https://divinglaravel.com/asynchronous-php
- Differences between PHP Fibers RFC in PHP 8.1 vs Swoole Fibers and Coroutines : https://openswoole.com/article/php-fibers-rfc-vs-swoole-co
- Wikipedia Coroutine : https://en.wikipedia.org/wiki/Coroutine#PHP
- Coroutines in C : https://www.chiark.greenend.org.uk/~sgtatham/coroutines.html
Fibers in PHP
- PHP Fibers, l’asynchrone au bout de la trompe : https://blog.ineat-group.com/2023/01/php-fibers-lasynchrone-au-bout-de-la-trompe
- PHP RFC on Fibers : https://wiki.php.net/rfc/fibers
- What Color is Your Function? Understand related issues with asynchronous code execution https://journal.stuffwithstuff.com/2015/02/01/what-color-is-your-function
- Wikipedia on Gree Threads https://en.wikipedia.org/wiki/Green_thread
- PHP Fibers - Milko Kosturkov - PHP UK 2022 : https://www.youtube.com/watch?v=jx0c_3J1BV4 and Fibers vs Generators vs Threads.
Monads and PHP
Article on Monads : https://blog.darkwood.com/article/les-monades-et-leur-utilisation-en-php
Slides on Monads : https://speakerdeck.com/matyo91/monads-and-usage-in-php
Video on Monads : https://www.youtube.com/watch?v=0M6MhUpra9o
- What is a monad from Sean Riley : https://www.youtube.com/watch?v=t1e8gqXLbsU
- Why monads are useful : https://jameswestby.net/tech/why-monads-are-useful.html
- Promise is neither a Functor nor an Applicative nor a Monad https://stackoverflow.com/questions/45712106/why-are-promises-monads
- Monads and Monoids : https://bartoszmilewski.com/2017/09/06/monads-monoids-and-categories
- Go mad for monads : https://www.youtube.com/watch?v=F5fUgXFSH0Q
- Functional PHP : https://www.youtube.com/watch?v=M3_xnTK6-pA, Crell Functional utilities : https://github.com/Crell/fp and the very updated version of the talk, now as a book: https://leanpub.com/thinking-functionally-in-php/
- Douglas Crockford: Monads and Gonads : https://www.youtube.com/watch?v=dkZFtimgAcM
- Monoids view as Matematical theory for Monads : https://en.wikipedia.org/wiki/Monoid
- Lamphpda, PHP Lambda translation from Haskel : https://github.com/marcosh/lamphpda
- Errors and monads in PHP by Baptiste LANGLADE: video https://www.youtube.com/watch?v=YfoLM0vWALM, Github : https://github.com/Innmind/Immutable
- Functional : https://github.com/whsv26/functional
- Monad PHP : https://github.com/ircmaxell/monad-php
- PHP-Option : https://github.com/schmittjoh/php-option
- Result-Type : https://github.com/GrahamCampbell/Result-Type
- Monad PHP https://github.com/ircmaxell/monad-php
Y-Combinator and PHP
Article of Y-Combinator : https://blog.darkwood.com/article/y-combinator-en-php
Slides of Y-Combinator : https://speakerdeck.com/matyo91/y-combinator-in-php
Video of Y-Combinator : https://www.youtube.com/watch?v=QSS_ZcO8Q1g
- Lambda Calculus - Wikipedia
- Lambda calculus language explanation : https://tgdwyer.github.io/lambdacalculus
- Combinator : https://github.com/loophp/combinator
- Lambda-php : https://github.com/igorw/lambda-php
- Deriving the y combinator in 7 easy steps : https://gist.github.com/igstan/388351
- Y combinator real life application: recursive memoization in clojure : https://blog.klipse.tech/lambda/2016/08/10/y-combinator-app.html
Messaging approach with East oriented code from Frédéric Hardy
- Article : http://blog.est.voyage/phpTour2015
- Source code : https://github.com/estvoyage/phpTour2015
Chunk computing in PHP
Article of Chunk computing : https://blog.darkwood.com/article/chunk-computing-en-php
Slides of Chunk computing : https://speakerdeck.com/matyo91/chunk-computing
Video of Chunk computing : https://www.youtube.com/watch?v=JBx4bjB8HIM