llogiq.github.io
Comparing Rust and Java 28 February 2016 This post compares Rust-1.8.0 nightly to OpenJDK-1.8.0_60 It may not be obvious from my other blog entries, but I work as a Java developer. I also freely confess to enjoy it, which probably makes me...
News & Blog Posts
2016-02-29
~26 min read
llogiq.github.io
More Type-Level Shenanigans 23 February 2016 last time we looked at how we can (mis?)use Rust’s type system to perform arbitrary computations. There was one problem though: Restricting types with where clauses could cause the compiler to do...
News & Blog Posts
2016-02-29
~2 min read
llogiq.github.io
Code of Heat Conductivity 10 February 2016 As many of you probably know, Rust has a Code of Conduct. Whether that’s a good or bad thing has been the subject of much debate, which after having abated for some time, was re-heated when Rust 1....
News & Blog Posts
2016-02-15
~3 min read
llogiq.github.io
Rustic Bits 11 February 2016 Some small things that make for rustic code: Result<(), ()> == bool, but the compiler will warn if unused. Similarly Result<T, ()> == Option<T>, with the same compiler warning. Use this type for results where th...
News & Blog Posts
2016-02-15
~2 min read
llogiq.github.io
A hundred lints 28 January 2016 clippy just reached a hundred lints. Besides the obvious partying, this is a good time to look at the lints, and see what we’ve come up with so far. When Manish started clippy, he had about 5 lints, most of t...
Notable New Crates & Project Updates
2016-02-01
~3 min read
llogiq.github.io
Type-Level Shenanigans 12 December 2015 (This is an extended treatment of the topic of my recent talk at the Rhein-Main Rust Meetup). The code presented should work with Rust 1.3 and following) If you have programmed anything of interest in...
News & Blog Posts
2015-12-14
~7 min read
llogiq.github.io
Where are you From::from And what have you turned Into::into? 27 November 2015 (This article was written with Rust 1.4) This time, let’s look at the From and Into traits (and some related ones) and ask the question when or for what to use t...
News & Blog Posts
2015-11-30
~6 min read
llogiq.github.io
Safety = Freedom Worse is Faster, Safe is Better 05 October 2015 I have long held the belief that in programming, unlike politics, safety = freedom (but I only recently found this succinct formulation). If you feel safe doing something, you...
News & Blog Posts
2015-10-12
~5 min read
llogiq.github.io
Llogiq on stuff 09 October 2015 (works with Rust 1.5.0-nightly-20151009) Update (See below) Here’s a short description of a technique I encountered while trying to write my Cow lint. When we have some more complex things to lint, we may som...
News & Blog Posts
2015-10-12
~2 min read
llogiq.github.io
Rust Faster! 03 October 2015 This is a co-production with Veedrac, who wrote most of the awesome technical details. A staple of all performance discussion is the great Computer Language Benchmarks Game. Despite the fact that many of the ben...
News & Blog Posts
2015-10-05
~9 min read
llogiq.github.io
Clippy vs. Rust 06 September 2015 (This blog post was written with some Rust 1.4.0-nightly) Recently, we’ve begun checking just about all code with clippy, both to see if we can improve something (we could) and to see if we find problems in...
From the Blogosphere
2015-09-07
~5 min read
llogiq.github.io
Llogiq on stuff 30 July 2015 As the title not quite subtly hints, today I’m going to write about the traits that come with Rust’s standard library, specifically from the context of a library writer yearning to give their users a good experi...
From the Blogosphere
2015-08-03
~18 min read
llogiq.github.io
Llogiq on stuff 23 July 2015 Following a reddit discussion about possible reduction of space consumption for Option types, I decided to implement my own library as a learning experience. I started out with an OptionBool enum with three poss...
From the Blogosphere
2015-07-27
~4 min read
llogiq.github.io
Holy std::borrow::Cow! 09 July 2015 Recently I got into a reddit discussion about how lifetimes are in fact quite hard. Not having had to deal with lifetimes and ownership so far within clippy, because just about everything we use is alread...
From the Blogosphere
2015-07-20
~3 min read
llogiq.github.io
Llogiq on stuff 15 July 2015 What’s measured gets optimized. So if we want high-performance Rust code, we need to measure it. Some time ago I wrote about benchmarks, and how Rust’s test crate makes it easy to set up a simple benchmark. Now...
From the Blogosphere
2015-07-20
~7 min read
llogiq.github.io
Benchmarking in Rust 16 June 2015 Recently on r/rust, I had an interesting discussion regarding some benchmarks where different map implementations led to wildly different results. As performance-related programming is one of my main job-re...
Tips & Tricks
2015-06-22
~4 min read
llogiq.github.io
My lint-writing workflow 04 June 2015 (This Post uses Rust version 1.2.* some nightly) Recently, I wrote a good number of lints for rust-clippy. In order to organize my thoughts and to share my findings, I’m going to write a bit about my wo...
Notable Links
2015-06-07
~15 min read