<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>functionalProgramming &amp;mdash; Jeko</title>
    <link>https://write.as/jeko/tag:functionalProgramming</link>
    <description>Crafting happiness with Free Software &amp; Hardware</description>
    <pubDate>Thu, 27 Aug 2026 04:55:00 +0000</pubDate>
    <item>
      <title>2022 Sem.4 - Lecture de la semaine</title>
      <link>https://write.as/jeko/2022-sem-4-lecture-de-la-semaine?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[The Star Wars API&#xA;&#xA;Lokke: Clojure for Guile&#xA;&#xA;10 principles for design that could save the world - Maddyness UK&#xA;&#xA;GPS&#xA;&#xA;Enhancing Holacracy-driven environments with the use of OKRs&#xA;!--more--&#xA;Merci beaucoup d&#39;avoir lu cet article !&#xA;&#xA;N&#39;hésite pas à me contacter pour me donner ton avis, proposer une idée d&#39;amélioration, ou poser une question !&#xA;&#xA;Abonnes-toi pour ne pas manquer les prochains : &#xA;&#xA;articles via Mastodon @jeko@write.as et RSS&#xA;screencasts via Peertube jeko@video.tedomum.net et RSS&#xA;&#xA;Et encore plus important, partages ce blog et dis à tes amis que c&#39;est le meilleur blog de l&#39;histoire du logiciel libre ! Sans dec&#39;&#xA;&#xA;#functionalProgramming #cleanArchitecture #joy #guile #français]]&gt;</description>
      <content:encoded><![CDATA[<p><a href="https://swapi.dev/" rel="nofollow">The Star Wars API</a></p>

<p><a href="https://github.com/lokke-org/lokke" rel="nofollow">Lokke: Clojure for Guile</a></p>

<p><a href="https://www.maddyness.com/uk/2021/12/01/10-principles-for-design-to-save-the-world/" rel="nofollow">10 principles for design that could save the world – Maddyness UK</a></p>

<p><a href="https://ciechanow.ski/gps/" rel="nofollow">GPS</a></p>

<p><a href="https://blog.holacracy.org/enhancing-holacracy-driven-environments-with-the-use-of-okrs-87c04bbf3742" rel="nofollow">Enhancing Holacracy-driven environments with the use of OKRs</a>

<em>Merci beaucoup d&#39;avoir lu cet article !</em></p>

<p><em>N&#39;hésite pas à <a href="https://linktr.ee/jeko" rel="nofollow">me contacter</a> pour me donner ton avis, proposer une idée d&#39;amélioration, ou poser une question !</em></p>

<p><em>Abonnes-toi pour ne pas manquer les prochains :</em></p>
<ol><li><em>articles via Mastodon <a href="/@/jeko@write.as" class="u-url mention" rel="nofollow">@<span>jeko@write.as</span></a> et <a href="https://rednosehacker.com/feed/" rel="nofollow">RSS</a></em></li>
<li><em>screencasts via Peertube jeko@video.tedomum.net et <a href="https://video.tedomum.net/feeds/videos.xml?accountId=17488" rel="nofollow">RSS</a></em></li></ol>

<p><em>Et encore plus important, partages ce blog et dis à tes amis que c&#39;est le meilleur blog de l&#39;histoire du logiciel libre ! Sans dec&#39;</em></p>

<p><a href="https://write.as/jeko/tag:functionalProgramming" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">functionalProgramming</span></a> <a href="https://write.as/jeko/tag:cleanArchitecture" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">cleanArchitecture</span></a> <a href="https://write.as/jeko/tag:joy" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">joy</span></a> <a href="https://write.as/jeko/tag:guile" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">guile</span></a> <a href="https://write.as/jeko/tag:fran%C3%A7ais" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">français</span></a></p>
]]></content:encoded>
      <guid>https://write.as/jeko/2022-sem-4-lecture-de-la-semaine</guid>
      <pubDate>Sun, 30 Jan 2022 23:20:37 +0000</pubDate>
    </item>
    <item>
      <title>2022 Sem.2 - Lecture de la semaine</title>
      <link>https://write.as/jeko/ma-lecture-de-la-semaine-derniere?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[En lisant le livre « Clean Architecture » de Robert C. Martin, il m&#39;arrive de revoir l&#39;architecture de mon application « Your Next Meal » (alias YNM), pour la science !&#xA;&#xA;Guile, ou plus largement Scheme, n&#39;étant pas un langage très utilisé pour illustrer les concepts de « Clean Architecture » ou « Clean Code », je m&#39;inspire de ce qui est fait dans d&#39;autres langages.&#xA;&#xA;J&#39;ai aussi lu quelques ressources sur le langage Ruby, dont j&#39;apprécie la philosophie de son créateur (même si je ne me suis jamais vraiment intéressé au langage en lui-même). &#xA;!--more--&#xA;À noter que je n&#39;a fait que survoler certaines de ces ressources à la recherche d&#39;une information précise sans les lire dans leur totalité. &#xA;&#xA;De moi à toi&#xA;&#xA;Do things, tell people.&#xA;&#xA;Ruby et le plaisir le programmer&#xA;&#xA;The Rails Doctrine&#xA;[The Philosophy of Ruby&#xA;A Conversation with Yukihiro Matsumoto, Part I](https://www.artima.com/articles/the-philosophy-of-ruby)&#xA;&#xA;Programmation fonctionnelle&#xA;&#xA;Functions are the basic unit of reusability&#xA;Currying, partial application, and fold&#xA;JavaScript Functional Programming Explained: Partial Application and Currying&#xA;[Étude de la sécurité intrinsèque&#xA;des langages fonctionnels](https://www.ssi.gouv.fr/uploads/IMG/pdf/LaFoSec-Etatdeslieuxdeslangages_fonctionnels.pdf)&#xA;&#xA;Lisp/Scheme&#xA;&#xA;Vers une programmation fonctionnelle praticable&#xA;How Basic Common Lisp Techniques Can Improve Code Configurability, Maintainability, and Reuse : « It is better to have 100 functions operate on one data structure than to have 10 functions operate on 10 data structures. » — Alan J. Perlis&#xA;How can I improve my Lisp programming style and coding efficiency?&#xA;Why Racket? Why Lisp?&#xA;Basic questions and answers for GNU Guile (from the perspective of a Pythonista)&#xA;&#xA;Clean Architecture/Code&#xA;&#xA;Hexagonal architecture&#xA;Clean Architecture&#xA;Implementing Clean Architecture - What is a use case?&#xA;Clean architecture for the rest of us&#xA;&#xA;Design techniques&#xA;&#xA;Functional approaches to dependency injection&#xA;Cyclic dependencies are evil&#xA;Six approaches to dependency injection&#xA;Organizing modules in a project&#xA;Dependency rejection&#xA;&#xA;Merci beaucoup d&#39;avoir lu cet article !&#xA;&#xA;N&#39;hésite pas à me contacter pour me donner ton avis, proposer une idée d&#39;amélioration, ou poser une question !&#xA;&#xA;Abonnes-toi pour ne pas manquer les prochains : &#xA;&#xA;articles via Mastodon @jeko@write.as et RSS&#xA;screencasts via Peertube jeko@video.tedomum.net et RSS&#xA;&#xA;Et encore plus important, partages ce blog et dis à tes amis que c&#39;est le meilleur blog de l&#39;histoire du logiciel libre ! Sans dec&#39;&#xA;&#xA;#functionalProgramming #cleanArchitecture #joy #guile #français]]&gt;</description>
      <content:encoded><![CDATA[<p>En lisant le livre « Clean Architecture » de Robert C. Martin, il m&#39;arrive de revoir l&#39;architecture de mon application « Your Next Meal » (alias YNM), pour la science !</p>

<p>Guile, ou plus largement Scheme, n&#39;étant pas un langage très utilisé pour illustrer les concepts de « Clean Architecture » ou « Clean Code », je m&#39;inspire de ce qui est fait dans d&#39;autres langages.</p>

<p>J&#39;ai aussi lu quelques ressources sur le langage Ruby, dont j&#39;apprécie la philosophie de son créateur (même si je ne me suis jamais vraiment intéressé au langage en lui-même).

À noter que je n&#39;a fait que survoler certaines de ces ressources à la recherche d&#39;une information précise sans les lire dans leur totalité.</p>

<h2 id="de-moi-à-toi">De moi à toi</h2>
<ul><li><a href="http://carl.flax.ie/dothingstellpeople.html" rel="nofollow">Do things, tell people.</a></li></ul>

<h2 id="ruby-et-le-plaisir-le-programmer">Ruby et le plaisir le programmer</h2>
<ul><li><a href="https://rubyonrails.org/doctrine#optimize-for-programmer-happiness" rel="nofollow">The Rails Doctrine</a></li>
<li><a href="https://www.artima.com/articles/the-philosophy-of-ruby" rel="nofollow">The Philosophy of Ruby
A Conversation with Yukihiro Matsumoto, Part I</a></li></ul>

<h2 id="programmation-fonctionnelle">Programmation fonctionnelle</h2>
<ul><li><a href="https://bnz-digital.github.io/fp/inductive/reusability/" rel="nofollow">Functions are the basic unit of reusability</a></li>
<li><a href="http://www.phyast.pitt.edu/~micheles/scheme/scheme14.html" rel="nofollow">Currying, partial application, and fold</a></li>
<li><a href="https://www.digitalocean.com/community/tutorials/javascript-functional-programming-explained-partial-application-and-currying" rel="nofollow">JavaScript Functional Programming Explained: Partial Application and Currying</a></li>
<li><a href="https://www.ssi.gouv.fr/uploads/IMG/pdf/LaFoSec_-_Etat_des_lieux_des_langages_fonctionnels.pdf" rel="nofollow">Étude de la sécurité intrinsèque
des langages fonctionnels</a></li></ul>

<h2 id="lisp-scheme">Lisp/Scheme</h2>
<ul><li><a href="https://tel.archives-ouvertes.fr/tel-00505235/document" rel="nofollow">Vers une programmation fonctionnelle praticable</a></li>
<li><a href="https://lispy.wordpress.com/2007/08/29/how-basic-common-lisp-techniques-can-improve-code-configurability-maintainability-and-reuse/" rel="nofollow">How Basic Common Lisp Techniques Can Improve Code Configurability, Maintainability, and Reuse</a> : « It is better to have 100 functions operate on one data structure than to have 10 functions operate on 10 data structures. » — Alan J. Perlis</li>
<li><a href="https://www.cs.cmu.edu/Groups/AI/html/faqs/lang/lisp/part1/faq-doc-4.html" rel="nofollow">How can I improve my Lisp programming style and coding efficiency?</a></li>
<li><a href="https://beautifulracket.com/appendix/why-racket-why-lisp.html" rel="nofollow">Why Racket? Why Lisp?</a></li>
<li><a href="https://www.draketo.de/proj/guile-basics/" rel="nofollow">Basic questions and answers for GNU Guile (from the perspective of a Pythonista)</a></li></ul>

<h2 id="clean-architecture-code">Clean Architecture/Code</h2>
<ul><li><a href="https://alistair.cockburn.us/hexagonal-architecture/" rel="nofollow">Hexagonal architecture</a></li>
<li><a href="https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html" rel="nofollow">Clean Architecture</a></li>
<li><a href="http://www.plainionist.net/Implementing-Clean-Architecture-UseCases/" rel="nofollow">Implementing Clean Architecture – What is a use case?</a>
<a href="https://pusher.com/tutorials/clean-architecture-introduction/" rel="nofollow">Clean architecture for the rest of us</a></li></ul>

<h2 id="design-techniques">Design techniques</h2>
<ul><li><a href="https://fsharpforfunandprofit.com/posts/dependency-injection-1/" rel="nofollow">Functional approaches to dependency injection</a></li>
<li><a href="https://fsharpforfunandprofit.com/posts/cyclic-dependencies/" rel="nofollow">Cyclic dependencies are evil</a></li>
<li><a href="https://fsharpforfunandprofit.com/posts/dependencies/" rel="nofollow">Six approaches to dependency injection</a></li>
<li><a href="https://fsharpforfunandprofit.com/posts/recipe-part3/" rel="nofollow">Organizing modules in a project</a></li>
<li><a href="https://blog.ploeh.dk/2017/02/02/dependency-rejection/" rel="nofollow">Dependency rejection</a></li></ul>

<p><em>Merci beaucoup d&#39;avoir lu cet article !</em></p>

<p><em>N&#39;hésite pas à <a href="https://linktr.ee/jeko" rel="nofollow">me contacter</a> pour me donner ton avis, proposer une idée d&#39;amélioration, ou poser une question !</em></p>

<p><em>Abonnes-toi pour ne pas manquer les prochains :</em></p>
<ol><li><em>articles via Mastodon <a href="/@/jeko@write.as" class="u-url mention" rel="nofollow">@<span>jeko@write.as</span></a> et <a href="https://rednosehacker.com/feed/" rel="nofollow">RSS</a></em></li>
<li><em>screencasts via Peertube jeko@video.tedomum.net et <a href="https://video.tedomum.net/feeds/videos.xml?accountId=17488" rel="nofollow">RSS</a></em></li></ol>

<p><em>Et encore plus important, partages ce blog et dis à tes amis que c&#39;est le meilleur blog de l&#39;histoire du logiciel libre ! Sans dec&#39;</em></p>

<p><a href="https://write.as/jeko/tag:functionalProgramming" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">functionalProgramming</span></a> <a href="https://write.as/jeko/tag:cleanArchitecture" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">cleanArchitecture</span></a> <a href="https://write.as/jeko/tag:joy" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">joy</span></a> <a href="https://write.as/jeko/tag:guile" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">guile</span></a> <a href="https://write.as/jeko/tag:fran%C3%A7ais" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">français</span></a></p>
]]></content:encoded>
      <guid>https://write.as/jeko/ma-lecture-de-la-semaine-derniere</guid>
      <pubDate>Mon, 17 Jan 2022 16:18:45 +0000</pubDate>
    </item>
  </channel>
</rss>