Mugo, a toy compiler for a subset of Go that can compile itself
Mugo is a single-pass compiler for a tiny subset of the Go programming language -- just enough to compile itself.
The latest blog posts to take off on Hacker News. 1,517 posts.
Mugo is a single-pass compiler for a tiny subset of the Go programming language -- just enough to compile itself.
The switch true pattern isn't well known but it is incredibly useful. It's not a JavaScript specific pattern, but I use it in almost every single project.
In shell scripting you sometimes come across comparisons where each value is prefixed with "x". Here are some examples from GitHub:
People appear to enjoy the blog posts about me porting different compilers to OpenBSD . What I would like to do for the next couple of posts beginning with this one is to take a step back and de-complexify these programs. Both the D compiler and the GNU Modula-2 compiler are highly complex pieces of software. But at…
Purism makes premium phones, laptops, mini PCs and servers running free software on PureOS. Purism products respect people's privacy and freedom while protecting their security.
A bug that plagues thousands of open-source ML projects.
This post is a basic introduction to running HTTPS servers and clients in Go using TLS. It assumes some familiarity with public-key crypto. Feel free to check out my earlier posts about RSA and the Diffie-Hellman Key Exchange ; TLS uses the elliptic-curve version of Diffie-Hellman. I won't be covering how the protocol…
Yesterday I found myself googling how to do something that I’d think it was pretty standard: How to download multiple files from AWS S3 in parallel using Python? After not finding anything reliable in Stack Overflow, I went to the Boto3 documentation and started coding. Something I thought it would take me like 15…
SQL best practices: a brief guide to writing better SQL queries.
Or, “how not to GIS”.
I have a hunch that once people saw the economic potential of software, they started looking for ways to "scale it up" and we haven't stopped searching yet.
Please note that this is not an endorsement or criticism of either of these languages. It’s simply something I found interesting with how LLVM handles code generation between the two. This is an implementation quirk, not a language issue. Update (April 9, 2021): A bug report was filed and a fix was pushed! The LLVM…
Building Brainf∗ck interpreter for the 21 century, with all the best systems design practices in mind. Think of Brainf∗ck-as-a-service cloud solution!
Our users deliver software to us as Docker containers, but we don’t use Docker to run them. We transmogrify container images into Firecracker micro-VMs. Here's how.
Around 1990, Richard Stallman (RMS) and I were writing the GNU C library getopt() and he wanted to extend it to support long (multi-character) option names for user-friendliness. He considered Unix…
Git has a reputation for being confusing. Users stumble over terminology and phrasing that misguides their expectations. This is most apparent in commands that “rewrite history” such as git cherry-pick or git rebase. In my experience,…
As grandiose as the title of this article might sound, I should clarify we’re talking about a low-stress, one-person company that I run from my flat here in Germany.
Introduction
Today is a big day for us – IntelliJ IDEA 2021.1, our first release of the year, is available! Download it from our website or using the Toolbox App. You can also upgrade from inside the IDE or use sn
On March 21, Richard M. Stallman (RMS) announced that he is on the Free Software Foundation (FSF) board of directors again after having resigned in September 2019. Two days later, an open letter condemning RMS as misogynist, ableist, transphobic, intolerant, bigoted, hateful, and dangerous was published. The letter…
It turns out my hopes were answered. First, Prechelt published another article that covers Tcl, Python, Perl, and Rexx. Also, Ron Garret (nee Erann Gat) did a follow-up study in which he asked programmers to write Prechelt's test program in Lisp. His results show that the resulting Lisp programs ran faster on average…
Thanks to 88 contributors, 283 pull requests, and our generous sponsors, I'm happy to announce the Bevy 0.5 release on crates.io! For those who don't …
Summary: Wuffs’ PNG image decoder is memory-safe but can also clock between 1.22x and 2.75x faster than libpng , the widely used open source C implementation. It’s also faster than the libspng , lodepng and stb_image C libraries as well as the most popular Go and Rust PNG libraries. High performance is achieved by…
Posted by Jeff Vander Stoep and Stephen Hines, Android Team Correctness of code in the Android platform is a top priority for the securit...
We’re happy to announce a new release of ClojureScript. If you’re an existing user of ClojureScript please read over the following release notes carefully.
We successfully deployed ThreadSanitizer in the Firefox project to eliminate data races in our remaining C/C++ components.
Today we are excited to announce the preview of the Microsoft Build of OpenJDK, a new Long-Term Support (LTS) distribution of OpenJDK that is open source and available for free for anyone to deploy anywhere. It includes binaries for Java 11, based on OpenJDK 11.0.10, on x64 server and desktop environments on macOS…