I’ll definitely check out the resources you mentioned. Thanks a lot . Le ven. 13 févr. 2026 à 20:12, Ivan Krylov <[email protected]> a écrit :
> Dear Saad Lamjadli, > > В Thu, 12 Feb 2026 13:01:26 +0100 > SAAD LAMJADLI <[email protected]> пишет: > > > I have analyzed and rewritten dozens of base R functions, and this > > process has been very instructive. However, I still find it difficult > > to write more complex and robust functions on my own. > > > > I would be very grateful for any advice you might have — whether in > > the form of recommended books, learning strategies, advanced > > resources, or suggestions for progressing toward more advanced > > functional programming skills in R. > > If you're solely focused on functional programming, try Structure and > Implementation of Computer Programs [1] or How to Design Programs [2], > but be ready to learn some theory and an unfamiliar language (Scheme). > For purely functional programming, you can try learning OCaml or > Haskell, but it's not a task for the faint of heart. Once you're done, > you'll be saying things like "a monad is just a monoid in the category > of endofunctors" and not understanding why people are giving you > strange looks in return. > > If you'd like to make your programs more complex and robust, you need > to study software architecture. The Architecture of Open Source > Applications [3] is a free resource on the topic. Clean Architecture by > Robert C. Martin is a more fundamental book, very much worth obtaining. > > As for learning software development in R... R is an environment where > you can interact with data; it only moonlights as a programming > language when you develop packages in it. To this end you can read > Extending R by John M. Chambers, Writing R Extensions > (RShowDoc("R-exts")) and many other free resources on the Web. > > Finally, Functional Programming by Thomas Mailund predates the native R > pipe (|>) and the currently experimental tail call support (Tailcall(), > Exec()), so it's probably worth spending some time to learn the new > tools as well. > > -- > Best regards, > Ivan > > [1] > > https://mitp-content-server.mit.edu/books/content/sectbyfn/books_pres_0/6515/sicp.zip/index.html > > [2] > https://htdp.org/2025-12-27/Book/index.html > > [3] > https://aosabook.org/en/ > > [[alternative HTML version deleted]] ______________________________________________ [email protected] mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide https://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.

