https://raphlinus.github.io/rust/gui/2022/05/07/ui-architecture.html · Rust is an appealing language for building user interfaces for a variety of reasons, especially the promise of delivering both performance and safety. However, finding a good architecture is challenging. Architectures that work well in other languages generally don’t adapt well to Rust, mostly because they rely on shared mutable state and that is not idiomatic Rust, to put it mildly. It is sometimes asserted for this reason that Rust is a poor fit for UI. I have long believed that it is possible to find an architecture for UI well suited to implementation in Rust, but my previous attempts (including the current Druid architecture) have all been flawed. I have studied a range of other Rust UI projects and don’t feel that any of those have suitable architecture either.
https://twitter.com/hillelogram/status/1522667509299699712?t=yoNX4PI680fRzKVcTIlR0w · “One of my favorite things with learning about new programming languages is seeing all the "small ideas" that could easily be picked up by other languages. Here are some examples:”
https://coredumped.dev/2021/04/07/when-pure-function-lie/ · Here is a simple question. Given the lisp function below (and that the function is not advised) what will the output be of (foo)? (defun foo () "foo") Seems pretty simple right? How could the answer be anything other then "foo"? It is just returning a constant string. Or is it? The real answer to this question is… We have no idea. It can could be any string of length 3.
https://coredumped.dev/2022/04/11/implementing-a-safe-garbage-collector-in-rust/ · In my last post I introduced an Emacs Lisp VM I was writing in Rust. My stated goal at the time was to complete a garbage collector. I think Rust has some really interesting properties that will make building garbage collectors easier and safer. Many of the techniques used in my GC are not original and have been developed by other Rustaceans in previous projects. Why use garbage collection? virtually all non-trivial programs need some way to reuse memory.