Best of 2020

The blog posts Hacker News loved most in 2020. 994 posts.

Software Engineering
784

Type-Level Programming in Rust

I show how two domain-specific type systems, information flow control and two-party communication protocols, can be implemented in Rust using type-level programming. I explain how interesting properties of these domains can be verified at compile-time. Finally, I construct a general correspondence between type…

786

Mathematica v12.1

Biggest .1 release from Wolfram. 182 completely new functions, plus updates and enhancements. Includes full HiDPI support, computation with video, data structures, asymptotic superfunction, mathematical functions, plotting, geometric optimization, vector plotting, cross-hatching, computational topology, tabular data…

792

Formulog: ML + Datalog + SMT

If you read a description of a static analysis in a paper, what might you find? There’ll be some cute model of a language. Maybe some inference rules describing the analysis itself, but those rules probably rely on a variety of helper functions. These days, the analysis likely involves some logical reasoning: about…

794

Better Than JSON?

You are seeing this because the administrator of this website has set up Anubis to protect the server against the scourge of AI companies aggressively scraping websites . This can and does cause downtime for the websites, which makes their resources inaccessible for everyone.

796

Inventing Monads

I got into a discussion about monads recently. On a search to find some resources to share, I realized that most essays explained them with type signatures and rules. A missing ingredient to grok them, I think, is to understand the intuition behind them. How could you end up inventing monads?