Rustgo: Calling Rust from Go with near-zero overhead (2017)
Go has good support for calling into assembly, and a lot of the fast cryptographic code in the stdlib is carefully optimized assembly, bringing speedups of over 20 times.
Posts that commenters keep linking to, ranked by how many different people have cited them in Hacker News comments. 1,045 posts.
Go has good support for calling into assembly, and a lot of the fast cryptographic code in the stdlib is carefully optimized assembly, bringing speedups of over 20 times.
Aditya Bhargava's personal blog.
Zig can be used to integrate closely with existing C code, or independently, without libc.
Some programming languages like Java or Scala offer more than one way to express a concept of “lack of value”. Traditionally, a special null value is used to...
This post describes a compile-time technique for catching use-after-move bugs in modern C++. It’s currently used to prevent some mistakes in the Serenity Operating System.
After that first Firebrand of an article on Application Binary Interface (ABI) Stability, I’m not sure anyone expected this to be the title of the next one, huh? It seems especially bad,
A pragmatic new design for high-level abstractions Monads (and, more generally, constructs known as “higher kinded types”) are a tool for high-level abstraction in programming languages1. Historically, there has been a lot of debate inside (and outside) the Rust community about whether monads would be a useful…
In the first post, I took a brief look at the programming languages ATS, C#, Go, Haskell, OCaml, Python and Rust to try to decide which would be the …
Look at a tiny syntax detail that shows up in current versions of rust that has profound implications on how the language deals with almost everything being an expression.
The official home of the Erlang Programming Language
I recently gave a talk on the internals of multicore OCaml GC at Jane Street offices in NYC. The slides from the talk are available online . But I felt that the slides alone aren’t particularly edifying. This post is basically the slides from the talk annotated with notes.
I was recently reminded of why I think it’s a bad idea to teach beginners C++. It’s a bad idea because it is an objective mess—albeit a beautiful, twisted, tragic, wondrous mess. Despite the current state of the community, this post is not a polemic against modern C++. This post is partly a follow-up on Simon Brand’s…
There is a misconception that Lisp is a dynamically typed language and doesn’t offer compile-time type checking. Lisp being the…
A version of the paper below was published in Celebrating the 50th anniversary of Lisp , edited by Charlotte Herzeel, the conference record of Lisp50 @ OOPSLA’08 (Nashville, Tennessee, USA, 2008). That collection is available through the ACM Digital Library .
Robert O'Callahan. Christian. Kiwi. Software guy. All content human-authored unless otherwise noted.
Effective D Programming Language.
I find myself thinking about a particular design principle of Rust today. I’m not sure I’ve ever seen it named specifically before, but it gets referred to from…
Hello everyone. I'm proud to release the result of a Facebook-sponsored study on the feasibility of using the RPython toolchain to produce ...
Later this year, we’re going to ship a new version of Microsoft’s tools for F#. This will include support for F# 4.1, featuring important incremental improvements to the language that have been developed in conjunction with F# users and contributors. Our tools will also include a cross-platform, open-source F# 4.1…
Go 1.22 adds math/rand/v2 and charts a course for the evolution of the Go standard library.
Learning about Programming Language Theory can be a tough journey, particularly for programming practitioners who haven’t studied it formally. This resource is here to help. Please feel free to get in touch if you have ideas for improvement.
The Rust programming language has been able to run on bare-metal without the standard library for quite some while now. However, most Rust applications depend on the std crate, and therefore still need a full operating system to run.
Welcome! This is a series of blog posts that shows you how to build a text editor in Rust.