"to craft a modern, direct-style I/O stack that seamlessly interfaces with the latest kernel I/O advancements, such as io_uring. This is where Eio comes in."
To me, #Rust's biggest fault is the compilation size. It promises to be somewhat functional language, yet it can't do tree shake down to function level.
The reason why I like the idea of compilation that includes only the functions I use is that it makes library writing easy.
For example in Elm which supports perfect pruning, you can make huge libraries, and not need to think about bloat, because the compiler will only compile the parts you use in.
#FunctionalProgramming will make you build better software, regardless of language. Some understated effects:
‣ Prefer params to global state
‣ Prefer data pipelines to fragile state mutation
‣ Prefer clear responsibilities for components
‣ Make dangerous side effects visible.
Is it possible to get the benefits of functional programming without going all in?
This post presents a set of functional programming concepts that I have found helpful in everyday programming, even for programmers not trained in functional programming.
I'm looking for recent books or up-to-date text on #FunctionalProgramming with PHP. #PHP is changing rapidly and all the books I see are nearly a decade old. Any good recommendations? #FP
「 The biggest reason I love Elm is that it changed my perspective on programming.
As someone who aspires to be a code craftsman, this is the biggest reason to learn Elm. Crazy story - I tried really hard to bring the Elm architecture with me when I started a project in Rust. It really makes you think about what goes into building deterministic systems 」 https://sufiyan.substack.com/p/why-i-love-elm?r=aaxsb&s=w
:thinkerguns: Why is Elm such a delightful programming language?
➥ Marcio Frayze
「 Elm is a pure functional programming language with immutable data structure, soundness type system, currying, and blah blah blah. But instead, the author preferred to highlight his real intention: to create a safe language that web developers feel pleasure in using it. The rest is a consequence of that! 」 https://dev.to/marciofrayze/why-is-elm-such-a-delightful-programming-language-2em8
I learned #FunctionalProgramming to escape the imperative programming languages, which in turn got me interested into #Compilers and #ProgrammingLanguages. Turns out, most of the real-world compilers are written in C and C++, so here I am back at square one.
After years of avoiding it for decades, I taught myself #Cpp in the last couple of weeks. So anyway, does anyone want me to write a series of #blog posts about making a #Lisp interpreter (https://github.com/kanaka/mal) in C++?
I may have got a bit carried away writing a blog post presenting both a really practical way with a nice developer experience of handling asynchronous operations that might fail in TypeScript... and a "write your own monad in TypeScript" tutorial.
If you're interested in #FunctionalProgramming, #typescript, or both - please share. I think the techniques in this post can really make writing TS a lot more enjoyable, and the results more reliable.
To achieve a better sample size, I'd highly appreciate if you could circulate the link to this survey in your own networks.
It's already been almost 9 years since the last user survey for these projects. Please help me/us to get more insights into your own experiences, your interests, hopes and pain points — allowing the projects and everyone involved to move forward more intentionally.
There're 15 questions here, with ~10 of them marked as mandatory. The main focal points are the matrices in the middle of the survey. Please also do use the final freeform comments box to share any further feedback you might have. Thank you very much for your interest, trust & taking the time to provide some much needed answers! 🙏
The survey is anonymous and will remain open until 23:59 (CET) on February 29, 2024. I will then share a public summary of the results on my Mastodon in the days following (do keep an eye on the #ThingUmbrella hashtag)...