Topics /

Programming Languages

The most popular blog posts about programming languages on Hacker News. 5,634 posts.

Any year
3332

Improving the usability of C libraries in Swift

There are many interesting, useful, and fun C libraries in the software ecosystem. While one could go and rewrite these libraries in Swift, usually there is no need, because Swift provides direct interoperability with C. With a little setup, you can directly use existing C libraries from your Swift code.

3334

Not Explicit

Oftentimes when I am conversing about the design of Rust with other users - as on RFCs or the internals forum - I witness a peculiar remark about “explicitness.” It usually goes something like this: I do not like Feature Design X because it is too implicit. Magic is okay in Other Language Y, but Rust is supposed to be…

3338

Racket-On-Chez Status

posted by Matthew Flatt with thanks to collaborators Kent Dybvig, Andy Keep, Gustavo Massaccesi, Sarah Spall, Sam Tobin-Hochstadt, and Jon Zeppieri It's been almost a year since we decided to try running Racket on Chez Scheme, and it has been almost six ...

3339

Rust: Structuring and handling errors in 2020 (2020)

After working through “the book” on the Rust programming language and getting started with the first non-trivial, real-world application I found myself faced with a question I didn’t yet feel well-equipped to handle: “How should you structure error handling in a mature rust application?”

3342

REPL Driven Design

If you follow me on facebook you know that I’ve been publishing daily CoronaVirus statistics. I generate these statistics using the daily updates in the Johns Hopkins github repository .

3345

Go Data Structures (2009)

When explaining Go to new programmers, I've found that it often helps to explain what Go values look like in memory, to build the right intuition about which operations are expensive and which are not. This post is about basic types, structs, arrays, and slices.

3351

A Crash Course on ML Modules (2015)

I was having lunch with a couple of Haskell programmers the other day and the subject of the ML family came up. I’ve been writing a lot of ML lately and mentioned that I thought *ML was well worth learning for the average Haskeller. When pressed why the best answer I could come up with was “Well.. clean language, Oh!…

3353

Type inference

Type inference is a major feature of several programming languages, most notably languages from the ML family like Haskell. In this post I want to provide a brief overview of type inference, along with a simple Python implementation for a toy ML-like language.

3355

Lessons learned from a successful Rust rewrite

I have written about my on-going rewrite-it-to-Rust effort at work: 1 , 2 , 3 . And now it's finished, meaning it's 100% Rust and 0% C++ - the public C API has not changed, just the implementation, one function at time until the end. Let's have a look back at what worked, what didn't, and what can be done about it.

3356

A lowering strategy for control effects in Rust

The Rust language has incrementally grown a set of patterns to support control-flow effects including error handling, iteration, and asynchronous I/O. In The registers of Rust , boats lays out four aspects of this pattern shared by Rust’s three effects. Today these effects are typically used in isolation, or at most…

3359

Asynchronous Programming in Rust

Asynchronous programming in Rust continues to make exciting strides, including the upcoming stabilization of the futures API . But, while these core APIs make it possible to write async Rust code today, it's not easy: it's a far cry from the smoothness of synchronous code.

3360

C++ Safety, in Context

Scope. To talk about C++’s current safety problems and solutions well, I need to include the context of the broad landscape of security and safety threats facing all software. I chair the ISO C++ s…