Bodil dot lol


Building TodoMVC With vgtk

The vgtk project started out as a side effect of one of my “must write a text editor” phases, as many things do. It triggers a review of the state of UI development in my current favourite language, and sometimes it triggers a ground-up attempt to construct an ad-hoc, informally-specified, bug-ridden, slow implementation of half of Elm, when I decide the state of the art is insufficient for my tastes. Usually, if the ground is sparsely trodden, I never get further than building some of the developer tooling necessary to build the UI tooling I need to build my text editor.

In this latest case, thanks to the superlative state of Rust’s developer tooling—and its low level bindings for at least one sufficiently qualified UI toolkit—I’ve gotten to the point where I’ve been able to build UI tooling that appeals to my idea of what UI tooling should look and feel like. So far, I’ve yet to build the text editor, but I’ve come to accept by now that it will only ever exist as a Platonic ideal, serving only as a motivating force to get me started building more useful things.

I’ll try to introduce vgtk, idea by idea, by way of a tutorial. You’ll need to have a working knowledge of Rust to follow along. You shouldn’t need to know GTK already, but you may need to be prepared to consult GTK documentation to understand certain things fully.

Learning Parser Combinators With Rust

This article teaches the fundamentals of parser combinators to people who are already Rust programmers. It assumes no other knowledge, and will explain everything that isn’t directly related to Rust, as well as a few of the more unexpected aspects of using Rust for this purpose. It will not teach you Rust if you don’t already know it, and, if so, it probably also won’t teach you parser combinators very well. If you would like to learn Rust, I recommend the book The Rust Programming Language.